本文へ移動
cccskills
無料GitHub で公開日本語紹介

inherit-legacy-style

既存コードから暗黙の命名・構成・エラー処理の慣習を読み取り、AIが参照するルールにまとめるスキル。方針の食い違いを一つずつ確認し、変更後のルール更新も支援します。

原文原文の説明を見る

Prevent AI style drift on legacy projects by scanning the codebase for implicit conventions, resolving conflicts with the operator one at a time, and writing an enforceable .ai-style-rules.md (Golden Files, naming rules, DONTs) plus an optional CLAUDE.md hook. Use when onboarding an AI agent onto a hand-written legacy codebase or extracting a project's unwritten coding rules.

インストール方法を見る

こんなときに便利

  • 古いコードベースにAIを導入したいとき
  • 暗黙のコーディング規約を文書化
  • 命名や構成の方針の食い違いを整理
  • モジュール追加後のルール更新

日本語での紹介

できること

既存コードの書き方を調べ、AIが新しいコードを書く際に参照する.ai-style-rules.mdを作成します。宣言の並び、状態や制御の命名、共通処理の置き場所、エラー処理の四つの観点で慣習を抽出します。見本となる実ファイル、具体的な命名ルール、避けるパターンをまとめ、方針が大きく分かれる箇所は利用者に一つずつ確認します。

こんなときに便利

人が書いてきた古いプロジェクトへAIエージェントを導入する場合や、文書になっていないコーディング規約を整理したい場合に向いています。既存のルールがあれば最近の変更と比較し、以前の記録を残したまま変化の履歴を追記します。プロジェクトの規模に応じて、全体を読むか一部を抽出して調べるかを切り替えます。

使い方の例

  • 「この既存プロジェクトの書き方を調べ、AI向けのルールにまとめて」
  • 「追加したモジュールを既存ルールと比較し、必要な更新を記録して」

注意点

プロジェクトのルートへの読み書き権限が必要です。Gitを推奨し、使えない場合の差分確認はファイルの更新日時を利用します。言語やフレームワークは問いません。CLAUDE.mdでの参照や編集時フックによる適用方法は選択式です。見本の構造を参考にしつつ、不具合は引き継がない方針です。

この紹介文は、公開されている SKILL.md をもとに AI(Claude Haiku)が作成しました。正確な仕様は下の原文を確認してください。

含まれるファイル(1)

  • SKILL.md8.2 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Inherit Legacy Style

Prevents AI code style drift in legacy projects by scanning the codebase for implicit conventions across 4 meta-architecture dimensions, resolving conflicts with the user one at a time, and crystallizing the consensus into an enforceable .ai-style-rules.md. Fully language- and framework-agnostic.

When to Activate

  • User types /inherit-legacy-style
  • User mentions onboarding AI onto a hand-written legacy project
  • User is worried about AI-generated code "drifting" from existing project conventions
  • User wants to extract and codify their project's implicit coding rules

When to Use

Use this skill when you need to preserve legacy project style and prevent AI-generated style drift. See When to Activate above for trigger conditions.

Prerequisites

  • Git (recommended; non-Git projects fall back to file timestamps for incremental mode)
  • Read/Write access to the project root (generates .ai-style-rules.md and optionally CLAUDE.md)

Workflow

Step 0 — Auto-Detect Mode

Silently check for .ai-style-rules.md at the project root:

File exists?Mode
NoBranch A — First-time Full-Scan
YesBranch B — Incremental Sniff

Announce the mode in one line and proceed — never ask the user to pick.

Branch A — First-time Full-Scan

1. Measure scale, pick a scanning tier

git ls-files | grep -cE '\.(js|ts|jsx|tsx|vue|py|go|rs|java|kt|rb|php|cs|swift|c|cpp|h)$'
TierSource filesStrategy
Small≲ 50Full close-read every source
Medium50–500Infra layer = full read; business layer = sample 2–3 per dimension
Large≳ 500Strict sampling + budget cap; --stat summary first, then targeted reads

2. Scan along 4 dimensions

  1. File Anatomy — in-file declaration order (imports → types → main logic → helpers → export)
  2. State & Control Flow — naming conventions for async state, pagination, flags
  3. Infrastructure — where cross-cutting utils live (interceptors, formatters, middleware)
  4. Error Handling — try/catch vs global interceptor vs Result return; null-check habits

3. Apply signal-threshold noise reduction

Before interrupting the user, evaluate signal strength:

  • Weak signal → auto-suppress: minority <5% AND count <10 → majority wins, minority goes to DONTs
  • Strong signal → grill: near-even split, or semantic fork on a core dimension
  • Small-project exception: sources ≲50, "3 vs 2" is NOT a majority → grill it

4. Resolve conflicts one at a time (Grilling Protocol)

For each strong-signal conflict, present exactly ONE question with 4 options:

Evidence: pathA uses style X, pathB uses style Y WARNING: Risk: mixing both fractures the project style Choose: 1 follow X 2 follow Y 3 this is evolution, update rules 4 I have a new rule

Suspend until the user answers, then proceed to the next conflict. Never stack questions.

5. Generate .ai-style-rules.md with three mandatory sections:

  • [Golden Files] — real exemplar paths annotated with what they demonstrate
  • [Naming & State-Control Rules] — concrete, checkable conventions
  • [DONTs] — anti-patterns that must not propagate

6. Install the persistent hook

Ask the user for enforcement strength (use AskUserQuestion):

OptionMechanism
1 Soft hook (recommended)Write @.ai-style-rules.md reference into project CLAUDE.md
2 Hard hookSoft hook + PreToolUse[Write|Edit|MultiEdit] Hook in settings.json
3 No hookKeep the rules file; user references manually

Branch B — Incremental Sniff

  1. Read existing .ai-style-rules.md; if it has a commit fingerprint, git diff <last_hash> HEAD --stat to pinpoint delta
  2. Read recent Git changes (git log -3 --stat → inspect suspect files on demand)
  3. For oversized diffs (>hundreds of files): --stat summary only + sample the largest changes
  4. Compare new code against recorded rules → conflicts go through Grilling Protocol
  5. Append evolution log at the end of .ai-style-rules.md (never overwrite old rules)

Per-Turn Enforcement

When .ai-style-rules.md is in context (loaded via CLAUDE.md), every code-writing task must open with a compliance declaration in the reasoning chain, naming the exemplar being followed and the DONTs being avoided.

How It Works

This skill auto-detects whether it's a first-time or incremental run via .ai-style-rules.md presence:

  • First-time (Branch A) — Measures project scale, scans codebase across 4 meta-architecture dimensions (File Anatomy, State & Control Flow, Infrastructure, Error Handling), applies signal-threshold noise reduction to suppress weak conflicts, resolves strong-signal conflicts one-at-a-time with the user, generates .ai-style-rules.md with Golden Files / Naming Rules / DONTs, and offers optional enforcement hooks.
  • Incremental (Branch B) — Reads existing rules, checks recent Git diffs for new or conflicting patterns, runs the same one-at-a-time grilling protocol for any conflicts found, and appends evolution logs without overwriting existing rules.
  • Per-Turn Enforcement — When hooked via CLAUDE.md, every code-writing task opens with a compliance declaration naming the exemplar followed and the DONTs avoided.

Output Specification

  • .ai-style-rules.md at project root (with commit fingerprint + scale tier in header)
  • Optionally CLAUDE.md with @.ai-style-rules.md reference
  • Evolution logs appended as ### [YYYY-MM-DD] Style Evolution Log entries

Anti-Patterns

  • FAIL: Do NOT skip the scale measurement step — sampling a 30-file project "starves" it; full-scanning a 5,000-file repo blows up
  • FAIL: Do NOT stack multiple conflict questions at once — grilling is strictly one-at-a-time
  • FAIL: Do NOT overwrite old rules in incremental mode — always append evolution logs
  • FAIL: Do NOT default to "hard hook" without asking — enforcement strength is the user's call
  • FAIL: Do NOT judge syntax or tech-stack quality — this skill aligns meta-architecture only
  • FAIL: Do NOT copy bugs from exemplar files — reuse structure, flag defects

Best Practices

  • Announce the detected mode (first-time vs incremental) and scale tier in one line before scanning
  • For large projects, read --stat summaries first, then targeted Read on suspect files
  • Let the signal threshold handle noise — a 843-vs-8 naming split should auto-resolve without user interruption
  • When in doubt about signal strength, lean toward asking
  • The CLAUDE.md soft hook (@.ai-style-rules.md) is usually sufficient; hard hook only if the user wants mechanical enforcement

Related Skills

  • init — initialize a new CLAUDE.md with codebase documentation
  • code-review — review diffs for correctness and style issues
  • simplify — review code for reuse and simplification opportunities

Examples

  1. First-time onboarding

    • User: "Help me onboard AI to this older codebase without changing its style."
    • Action: Run Branch A full-scan → measure scale → scan 4 dimensions → grill conflicts → generate .ai-style-rules.md → offer hook strength (soft/hard/none).
  2. Incremental update after team changes

    • User: "We added a new module; keep existing style rules intact."
    • Action: Run Branch B incremental sniff → compare Git deltas to recorded rules → grill any new conflicts → append evolution log without overwriting.
  3. Enforcing DONTs via CLAUDE.md

    • User: "Make sure all new code stays consistent with the project's rules."
    • Action: Soft hook installed → .ai-style-rules.md auto-loaded every session → every code-writing task opens with compliance declaration, reusing exemplar patterns and avoiding DONTs.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

accessibility

無料日本語概要

Web・iOS・Androidの画面を、読み上げやキーボード操作に対応させ、ラベル、配色、操作対象の大きさなどをWCAG 2.2に沿って設計・点検するスキル。

  • アイコンボタンの説明を付けたいとき
  • キーボード操作とモーダルの点検
  • コントラストや操作対象の大きさの確認
affaan-m/ECC27.8万2026年10月12日 更新

agent-architecture-audit

無料日本語概要

AIエージェントの不調を、指示・記憶・ツール実行・画面表示など12の層から調べるスキル。コードやログを根拠に原因を整理し、重要度順の指摘と修正案をまとめます。

  • アプリ内だけで起きる不調を調べたいとき
  • 過去の会話が混ざる原因を調査
  • ツールの未実行や実行の誤報を確認
affaan-m/ECC27.8万2026年10月12日 更新

agent-eval

無料日本語概要

実際の開発課題で複数のコーディングエージェントを比較するスキル。成功率、取得可能なAPI費用、所要時間、繰り返し実行の安定性を測り、選定や更新後の評価に使えます。

  • 実際の開発課題でエージェントを比較
  • 新しいツールやモデルの導入前評価
  • エージェント更新後の性能確認
affaan-m/ECC27.8万2026年10月12日 更新

agent-harness-construction

無料日本語概要

AIエージェントが使うツールの種類や入出力、エラーからの復帰手順を設計・見直します。文脈の情報量も整理し、作業完了率や再試行回数で改善を評価します。

  • エージェントのツールや入力形式の設計
  • ツールの結果と次の行動を明確にしたいとき
  • 安全な再試行と停止条件を定めたいとき
affaan-m/ECC27.8万2026年10月12日 更新

agent-introspection-debugging

無料日本語概要

AIエージェントの失敗や同じ操作の繰り返しを記録し、原因の切り分け、小さな復旧操作、結果の報告まで進める手順を示して、根拠のある再試行につなげるスキル。

  • 同じツール操作を繰り返す原因の調査
  • 会話の肥大化による品質低下の調査
  • ファイルパスや環境の食い違いの確認
affaan-m/ECC27.8万2026年10月12日 更新

agent-introspection-debugging

無料日本語概要

AIエージェントが失敗や同じ操作を繰り返す原因を、エラーと実行状況から整理します。小さな復旧操作を試し、結果と根拠を引き継げる報告にまとめるスキルです。

  • エージェントの連続失敗を診断したいとき
  • 同じツール操作のループ調査
  • 情報の蓄積による出力劣化の点検
affaan-m/ECC27.8万2026年10月5日 更新

affaan-m のスキルをすべて見る

このスキルの問題を報告する