Agent Skills by ALSEL
Anthropic Claude音声・動画・メディア⭐ リポ 299品質スコア 89/100

blog-voice-analyzer

ブログコンテンツに対してAI Voice Analyzerを実行し、AI生成のような表現パターンを検出して、改善するための具体的な修正提案を取得できます。ブログ記事を公開する前にレビューや改善を行う際に活用できます。

description の原文を見る

Run the AI Voice Analyzer on blog content to detect AI-sounding patterns and get actionable rewrite suggestions. Use when reviewing or improving blog articles before publishing.

SKILL.md 本文

ブログ音声アナライザー

NLPを使用してブログ記事のAI風パターンを分析し、公開前に執筆を改善するための診断を取得します。目標は、ほぼすべての他のブログ記事より人間らしく読める、かつGoogleの有用なコンテンツシグナルでフラグされることを避ける内容です。

ユーザーが /blog-voice-analyzer で呼び出すか、ブログ投稿のAIパターンを「確認」または「分析」するよう求められたときに起動されます。

クイックスタート

pipenv run python3 scripts/blog/ai_voice_analyzer.py <path-to-markdown-file>

このスクリプトはテキストファイル(マークダウン、プレーンテキスト)を受け入れます。分析前にフロントマター、HTML、マークダウンフォーマットを削除します。

検出内容

アナライザーは、4つのカテゴリに整理された18個の独立したチェックを実行します。各チェックは0~100でスコア化され(数値が高いほど人間らしい)、全体スコアは加重平均です。

構造パターン

チェック測定対象AI特性人間の特性
文の長さのばらつき文ごとの単語数の標準偏差15~20語周辺に集中(標準偏差 < 4)ワイルドなばらつき: 3語の短文と30語の文が混在(標準偏差 8以上)
文の開き方の多様性各文の最初の2トークンのPOSパターン40%以上が「The」または「This」で開始短文、質問、接続詞、逆順、前置詞句
節の深さの多様性文ごとの最大依存性木の深さ文全体で均一な深さシンプルな文と複雑にネストされた文の混在
段落サイズの多様性段落単語数の変動係数どの段落もほぼ同じ長さ1行の段落と長いテキストブロックが混在

語彙と単語選択

チェック測定対象AI特性人間の特性
語彙の多様性(TTR)コンテンツ単語のタイプ・トークン比低いTTR(< 45%) — 同じ単語を繰り返す高いTTR、ただしシンプルな語彙を意図的に使う執筆者もいる
ヘッジ/フィラー句約50のAIマーカー句と約35のシグナル単語に対する完全一致「It's important to note」「multifaceted」「leverage」「delve」「cornerstone」マッチなし
弱い副詞「really」「very」「literally」「significantly」などの密度> 1%の密度より強い動詞で置換、または完全に削除
名詞化の密度-tion、-ment、-ness、-ity、-ence、-anceで終わる名詞> 5% — 「reduction」「transition」「consumption」(能動動詞ではなく)< 3% — 「reduce」「shift to」「consume」を好む
曖昧な動詞句「contributes to」「remains a」「poses a」「provides a」「aims to」など1記事あたり4~6個以上ゼロ — 直接的な主張を使用
単語の繰り返し予想される頻度を超えるコンテンツ単語(トピック単語はより高いしきい値)300語中「Substantial」が4回トピック単語は自然に繰り返されるかもしれない; 非トピック単語はバリエーション豊か

声とパーソナリティ

チェック測定対象AI特性人間の特性
個人的な声一人称(「I」「we」)、二人称(「you」)、短縮形(「don't」「it's」)3つすべてがゼロ意見には一人称、エンゲージメントには二人称、温かみのために短縮形
質問?で終わる文ゼロの質問 — 純粋に宣言的5~10%の文が質問(修辞的または直接的)
具体的な詳細(NER)固有表現: 人物、場所、日付、数字、組織ゼロ — すべて抽象的で一般的名前、日付、数字、実例
読みやすさレジスタFlesch-Kincaid学年 + 平均音節数/単語学年14以上(学術的)、平均音節数 > 1.8学年6~10(会話的)、平均音節数 < 1.6

マイクロパターン

チェック測定対象AI特性人間の特性
受動態依存性ラベル nsubjpass / auxpass文の > 15%< 10%
遷移単語の開き文の開始に「However」「Furthermore」「Additionally」> 段落あたり0.5個シグナル化なしでアイデアが流れる
3項目リスト「X、Y、そしてZ」調整パターン> 1000語あたり2個すべてが3つセットではない
ペア形容詞の決まり文句依存性解析による「ADJ and ADJ」(「smooth and swift」「widespread and uniform」)> 1000語あたり3個より強い単語を選ぶ

出力の読み方

全体スコア

範囲解釈
75-100自然に読める。フラグされた項目の細かい調整のみ。
55-74AIパターンがいくつか見える。ターゲットを絞った書き直しを推奨。
35-54明らかなAI音声。大幅な書き直しが必要。
0-34AI生成の可能性が高い。完全な書き直しを推奨。

フラグされた文

2個以上の問題がある文のみがフラグされます(ノイズを削減)。各文にはHIGH/MED重要度のラベルと以下のような具体的な診断が付きます:

[HIGH] #13:
"The variability in charging station availability, especially in rural areas, poses a challenge..."
  → Vague verb: "poses a"
  → Nominalization-heavy (4): variability, station, availability, distance
  → Length (20w) ≈ average (21w)

これらは最初に書き直すべき文です。

優先度の高い修正

サマリーは、スコアが最も低い5つのディメンションと具体的なアクションをリストアップします。これらを順番に対処してください。

出力を使用してコンテンツを改善する方法

ステップ1: アナライザーを実行

pipenv run python3 scripts/blog/ai_voice_analyzer.py path/to/article.md

ステップ2: 優先度の高い項目から順に修正

優先度の高い修正リストを上から下へ進めます。カテゴリ別で最も影響の大きい改善:

パーソナリティのスコアが低い場合(< 70):

  • 短縮形を全体に追加: 「do not」→「don't」「it is」→「it's」「you are」→「you're」
  • 意見に一人称を追加: 「I find...」「In my experience...」「We've all been there」
  • 読者にエンゲージするために二人称を追加: 「You know that feeling when...」

質問のスコアが低い場合(< 50):

  • トピック文を質問に変換: 「Decision fatigue depletes willpower」→「Why does making too many choices drain you?」
  • 読者が自分のことだと感じるような修辞疑問を追加: 「Ever notice how the simplest decisions feel impossible by 8pm?」
  • セクションの最後に次のポイントへつながる質問で終わる

読みやすさのスコアが低い場合(< 70):

  • ラテン語由来の単語をより短いものに置換: 「utilize」→「use」「approximately」→「about」「demonstrate」→「show」
  • セミコロンとエムダッシュで長い文を分割
  • 音に出して読む — 友人に言わないなら、単純化してください

名詞化のスコアが低い場合(< 70):

  • すべての-tion/-ment/-ness名詞を見つけ、能動動詞に変換:
    • 「The reduction of stress」→「Reducing stress」
    • 「The implementation of the system」→「Implementing the system」
    • 「His contribution to the project」→「He contributed to the project」

ヘッジ句が検出された場合:

  • それらをすべて削除してください。すべてです。意味は加えられません:
    • 「It's important to note that X」→「X」
    • 「In today's fast-paced world」→ 完全に削除
    • 「multifaceted」→「complex」または単に具体的なファセットを説明

曖昧な動詞が検出された場合:

  • 直接的な主張に置換:
    • 「X contributes to Y」→「X causes Y」または「X increases Y」
    • 「X remains a significant challenge」→「X is still hard」または具体的にはなぜ
    • 「X aims to achieve Y」→「X does Y」または「X tries to Y」

文のばらつきが低い場合(< 70):

  • 3~5語の短い文を追加: 「That's the point.」 / 「And it works.」 / 「Here's why.」
  • 段落の最も長い文を2つに分割
  • 「But」または「And」で文を開始

ステップ3: 再実行して比較

pipenv run python3 scripts/blog/ai_voice_analyzer.py path/to/article-v2.md

目標: 全体スコア > 80、HIGH重要度のフラグされた文がゼロ。

ステップ4(オプション): モデルベンチマークを実行

異なるAIモデルが類似のプロンプトにどのようにパフォーマンスするかを比較するには:

pipenv run python3 scripts/blog/benchmark_models.py

これにより、モデルごとに3つの記事(Claude Sonnet、Haiku; GPT-4o、4o-mini、o3-mini)が心理学/生産性トピックで生成され、すべてスコア化されます。スクリプトの TOPICSMODELS を編集してカスタマイズします。

既知の制限事項

アナライザーがよく捕捉するもの:

  • 語彙パターン(ヘッジ句、シグナル単語、名詞化、曖昧な動詞)
  • 構造的な単調性(文の長さ、開き方の繰り返し、節の深さ)
  • 音声の欠如(パーソナリティがない、質問がない、短縮形がない)
  • レジスタのミスマッチ(ブログコンテンツに対する学術的な学年レベル)

アナライザーが捕捉しないもの:

  • セマンティック空虚さ — 文はバリエーション豊かで、ヘッジ句がないように見えても、実質的なことを言わないことがあります。このツールは、コンテンツが洞察的か一般的な定型句かを判断できません。
  • セクションレベルのテンプレート構造 — トピック→説明→トピック→説明が全体を通じて繰り返されるのはAIの強いパターンですが、ツールは文と段落レベルのみを見て、セクションレベルのテンプレートは見ません。
  • 決まり文句のアイデア — ツールはどう書くかをチェックし、何を書くかはチェックしません。明白なアドバイスに満ちた記事(「十分な睡眠を取る」「定期的に運動する」)は構造的には問題なくスコアされます。
  • トリガー句なしの過度なヘッジング — 段落はパッセージリストの特定の句を使用することなく、優柔不断で非コミットメント的である可能性があります。
  • 画像、フォーマット、レイアウト — ツールはテキストのみを分析します。
  • 短いテキスト — 約300語以下の記事は、統計的尺度がボリュームを必要とするため、信頼性の低いスコアを生成します。一部のディメンション(TTR、文のばらつき)は特に短いテキストでノイズが多い。
  • トピック単語のインフレーション — 単語の繰り返し検出器は、トピック単語(タイトルと最初の段落から抽出)を除外しようとしていますが、完璧ではありません。記事の主語が一般的な単語を使用している場合、それらは依然としてフラグされる可能性があります。
  • スタイルと欠陥 — 意図的にシンプルな語彙を使用する(低いTTR)、質問を避ける(宣言的スタイル)、または均一なサイズの段落を書く執筆者もいます。ツールはこれらをAI出力と相関するため弱点として扱いますが、意図的なスタイル選択かもしれません。判断を使用してください。
  • 偽のペア形容詞フラグ — 一部のペア形容詞は自然で効果的です(「fast and powerful」)。ツールは1000語あたりの密度しきい値を適用しますが、良い執筆もフラグできます。

ベンチマーク参考スコア

既知の人間とAIテキスト全体でのテストから:

テキストスコア注記
Paul Graham essays85-86明確で人間らしいプロのゴールドスタンダード
Clarido blog post (AI生成、編集済み)84パーソナリティが備わったよく作られたAI出力
Claude Haiku(デフォルトプロンプト)82 avg標準的なAIモデルで最高
Claude Sonnet(デフォルトプロンプト)77 avgより高い学年レベル、より多くの名詞化
GPT-4o-mini(デフォルトプロンプト)70 avg低いパーソナリティ、短縮形なし
o3-mini(デフォルトプロンプト)68 avg短縮形なし、非人格的
GPT-4o(デフォルトプロンプト)66 avg最悪のパーソナリティ、最少質問
Raw ChatGPT(プロンプトなし)40すべてのディメンションで明らかなAI音声

公開コンテンツの目標: 80以上、HIGH重要度のフラグされた文がゼロ。

技術詳細

依存関係: spacytextstat(Python、pipenvでインストール済み)。en_core_web_sm spaCyモデルが必要です。

スコアリング方法: 18のディメンション各々が0~100でスコア化されます。全体スコアは、パーソナリティ(0.12)、ヘッジ句(0.10)、エンティティ密度(0.08)、文のばらつき(0.08)、曖昧な動詞(0.07)が最も重み付けされた加重平均です。完全な重みテーブルは scripts/blog/ai_voice_analyzer.pyanalyze() 関数にあります。

文フラグしきい値: 2個以上の同時発生する問題を持つ文のみがフラグされます。ノイズを削減するために、単一の問題を持つ文は表示されません。「長さが平均に近い」フラグは、ドキュメント全体の文の長さ標準偏差が6未満の場合のみ発動します(実際の単調性を示す)。

ファイル

ファイル目的
scripts/blog/ai_voice_analyzer.pyメインアナライザー — 任意のテキストファイルで実行
scripts/blog/benchmark_models.pyClaudeおよびGPTモデル全体で記事を生成とスコア化
tmp/benchmark/ベンチマーク実行からのキャッシュされた生成記事とresults.json

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
majiayu000
リポジトリ
majiayu000/claude-skill-registry
ライセンス
MIT
最終更新
2026/5/4

Source: https://github.com/majiayu000/claude-skill-registry / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: majiayu000 · majiayu000/claude-skill-registry · ライセンス: MIT