mcpField
G
genre-conventions

genre-conventions

github.com/jwyniaクリエイティブ・メディア179477 回インストール35 週間前に更新
リポジトリ

genre-conventions について

ジャンル上の問題を診断し、ジャンル固有の要素の作成を支援する執筆スキルです。読者に約束する感情体験を重視し、ジャンルと舞台設定を区別しながら、物語の要素がその約束を支えているか確認します。

主な機能

  1. 01ジャンルの約束との不一致を診断
  2. 02ジャンルと舞台設定の区別
  3. 03ジャンルに必要な要素の確認
  4. 04主ジャンルと副ジャンルの検討
  5. 05ジャンル要素の生成とテキスト分析

活用シーン

  1. 01物語が提供する感情体験の明確化
  2. 02冒頭でジャンルが伝わるかの確認
  3. 03不足または配置のずれた要素の特定
  4. 04副ジャンルが主筋と競合するかの評価

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jwynia/agent-skills --skill genre-conventions

インストール後、Claude Code で/genre-conventionsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

data/
genre-elements.json
scripts/
genre-blend.ts
genre-check.ts
genre-elements.ts

詳細

ジャンルの慣習:診断と生成のスキル

ジャンルレベルの物語の問題を診断し、ジャンルに応じた要素を生成します。物語が読者に対する感情面の約束を果たすようにすることが、あなたの役割です。

基本原則

ジャンルは約束です。物語がその約束を果たさなければ、読者は裏切られたと感じます。

根源的なジャンルが扱うのは、書棚の分類ではなく感情体験です。宇宙船を舞台にした物語でも、どのジャンルにもなり得ます。舞台設定がジャンルなのではありません。感情体験こそがジャンルです。


11の根源的なジャンル

ジャンル中心となる約束読者が感じたいこと
ワンダー畏怖と魅了「そんなことが可能だなんて、まったく知らなかった」
アイデア知的な刺激「そんなふうに考えたことはなかった」
アドベンチャー困難を通じた興奮「次は何が起こるのだろう?」(外的)
ホラー恐怖と脅威との対峙「見るのは怖いけれど、目を離せない」
ミステリー未知の事実への好奇心「自分で解き明かしたい」
スリラー危険による緊張感「間に合うだろうか?」
ユーモア面白さと娯楽「予想外で、楽しかった」
人間関係人とのつながりへの関心「彼らにうまくいってほしい」
ドラマ内的葛藤と変容「次は何が起こるのだろう?」(内的)
イシュー複雑な問いの探究「今は違う見方をしている」
アンサンブルグループの力学と協働「彼らはどうやって一つになるのだろう?」

注: SF、ファンタジー、歴史もの、現代ものは舞台設定であり、ジャンルではありません。ファンタジー作品はミステリーにも、ロマンスにも、スリラーにもなり得ます。舞台設定とは、ジャンルが展開する場所です。


ジャンルの状態

状態 G1:ジャンルの約束が欠けている

症状: 物語が読者との明確な感情的な契約を欠いています。どのような体験を提供するのかが不明確です。冒頭で、どのような物語なのかが示されていません。読者は何を期待すればよいのかわかりません。

主な質問:

  • 読者にどのような感情体験をしてもらいたいですか?
  • 第1章でジャンルが明確に示されていますか?
  • 冒頭で、物語が実際に届ける感情的な満足を約束していますか?
  • 「これはどんな物語?」と聞かれたとき、一言で答えられますか?

対策:

  • 生み出したい中心的な感情体験を特定します
  • 冒頭のシーンでジャンルを示す要素を確立します
  • 物語の引きが、実際の物語の内容を約束しているか確認します

状態 G2:物語に合わないジャンル

症状: 物語の要素が、目指している感情体験と一致していません。人間関係の内容なのにスリラーのペース配分になっています。ミステリーの構成なのに、結末はアドベンチャーの満足感をもたらします。題材が選んだジャンルに逆らっています。

主な質問:

  • 実際にどのような感情体験を生み出していますか?
  • この題材に最も適したジャンルは何ですか?
  • 意図したことと、実際に書いていることの間にずれはありますか?
  • この題材を最も生かせるジャンルは何ですか?

対策:

  • 題材を無理にジャンルに当てはめず、ジャンルを題材に合わせます
  • この着想が別の感情的な届け方を求めていないか検討します
  • 適したジャンルを使って物語を再構成します

状態 G3:ジャンル要素の配置が不適切

症状: 要素自体は適切ですが、出すタイミングが間違っています。ミステリーの手がかりが一度にすべて提示されます。危険性が確立される前にスリラーの緊張感が生まれます。登場人物の脆弱さを設定する前にホラーの恐怖を描いています。恋愛の障害が遅すぎるタイミングで登場します。

主な質問:

  • ミステリーの手がかりは、段階的な真相の解明に向けて配置されていますか?
  • スリラーの緊張感は高まっていますか、それとも停滞していますか?
  • ホラーの恐怖は、登場人物の脆弱さを事前に設定したうえで生み出されていますか?
  • 人間関係の障害は、つながりを妨げた後、それを解消するようになっていますか?
  • ワンダーの感覚は、発見を通じて高まっていますか、それとも啓示を一度に提示していますか?

対策:

  • ジャンルごとのペース配分テンプレートを使います
  • 要素の配置を読者の期待曲線に照らして整理します
  • 伏線が結末に先行しているか確認します

状態 G4:副次ジャンルが主要ジャンルを損なっている

症状: サブプロットのジャンルがメインストーリーを支配しています。ロマンスがスリラーを圧倒しています。ユーモアがホラーの雰囲気を壊しています。アイデアを軸にした内容が冒険のテンポを遅くしています。読者が物語の手応えをつかめません。

重要な質問:

  • 主要な感情体験は何ですか?
  • 副次ジャンルは主要ジャンルを支えていますか、それとも競合していますか?
  • 副次ジャンルにどの程度の描写時間を割いていますか?
  • 副次ジャンルは主要な体験を高めていますか、それとも妨げていますか?

対処法:

  • ジャンルの明確な優先順位を定める
  • 副次ジャンルを特定の場面やサブプロットに限定する
  • 副次ジャンルを、主要ジャンルの邪魔ではなく、その掘り下げに使う
  • 副次ジャンルが一貫して主要ジャンルを損なう場合は、削除を検討する

状態 G5:ジャンルに必要な要素がない

症状: フェアプレイの手がかりがないミステリー。刻々と迫る制限時間がないスリラー。登場人物の脆弱性がないホラー。障害がない人間関係もの。課題が段階的に難しくならない冒険もの。

重要な質問:

  • このジャンルに欠かせない要素は何ですか?
  • 現在の草稿に欠けている要素はどれですか?
  • 構成を変えずに追加できますか?
  • ジャンルに必要な役割を設定に担わせていませんか?

対処法:

  • ジャンル要件のチェックリストを使う
  • genre-elements ツールを使って不足している要素を生成する
  • 必須要素をそれぞれ最終幕までに登場させる

状態 G6:ジャンルのありきたりな要素を検証していない

症状: ジャンル要素が使い古された印象を与えています。読者がすべてを予測できます。演出に新鮮さがありません。「これ、前にも読んだことがある」という反応が返ってきます。

重要な質問:

  • どのジャンル慣習を、何も考えずに使っていますか?
  • どれを反転させたり、超越したりできますか?
  • ジャンルの約束を、意外な形で果たせる箇所はどこですか?
  • 直交的なアプローチを取ると、どのような形になりますか?

対処法:

  • cliche-transcendence スキルに引き継ぎ、直交性の分析を行う
  • 各ジャンル要素の新鮮さを検証する
  • 予想外の方法で、期待される感情体験を届ける

状態 G7:設定をジャンルと取り違えている

症状: ジャンルを尋ねられて「SFです」と答えています。感情の核がない世界構築です。設定要素がジャンルのニーズに応えていません。設定を取り除くと、物語にジャンルがなくなります。

重要な質問:

  • 設定を取り除いた場合、感情を軸にした物語は何のジャンルですか?
  • 設定はジャンル体験をどのように高めていますか?
  • 現代を舞台にした場合、この物語はどのような形になりますか?
  • 設定だけにすべてを担わせていませんか?

対処法:

  • 設定の下にあるジャンルを特定する
  • 設定要素をジャンルのニーズに沿わせる
  • 設定とは独立した感情の流れが物語にあることを確認する

状態 G8:アンサンブルにジャンルの割り当てがない

症状: 複数の視点人物が登場しますが、ジャンル体験に一貫性がありません。視点が切り替わるたびに雰囲気が急変します。読者は何を感じればよいのかわかりません。各筋書きは単独では機能しても、組み合わさりません。

重要な質問:

  • 物語全体を包むジャンルは何ですか?
  • 各視点の筋書きに、それぞれサブジャンルがありますか?
  • それぞれのジャンル体験はどのように組み合わさりますか?
  • ジャンルへの期待を定める、中心的な視点人物はいますか?

対処法:

  • すべての筋書きが支える主要ジャンルを定める
  • 各視点に相性のよいサブジャンルを割り当てる
  • 視点の切り替えをマッピングし、雰囲気の一貫性を確認する
  • アンサンブルの要素を分断ではなく統一に活用する

ジャンル要件クイックリファレンス

ジャンル舞台に必要な要素キャラクターに必要な要素プロットに必要な要素
驚異広大なスケール、前例のない現象畏敬の念を抱く力、重要性を認識できること発見、啓示、視点の変化
アイデア概念を軸に築かれた社会知的好奇心、多様な視点概念の探究、仮説の検証
冒険多様な環境、身体的な障害関連する技能、経験を超えた試練段階的な難題、地理的な移動
ホラー孤立、行動の制限、日常の崩壊脅威に結びつく弱点、失うもの増大する脅威、失われていく安全
ミステリー管理された環境、幾重にも重なる情報技能を持つ調査者、目撃者、容疑者情報収集、段階的な真相の開示
スリラー時間制限のある、重大な危機を伴う環境重要な責任、対等な敵対者締め切りによる圧迫、増大する脅威
ユーモア独特なルール、誤解が生じる可能性思い込みによる盲点、対照的な規範誤解、予想の裏切り
人間関係近くにいることを余儀なくされる状況、共通の課題補完し合う特性、意義ある障害関係の進展、関係性への試練
ドラマ価値観に挑戦する環境試される強い価値観難しい選択、内面の葛藤
社会問題問題が顕在化した社会中心的な問題に対する多様な視点問題のさまざまな側面を直接経験すること
群像劇多様な技能を必要とする課題補完し合う能力、対照的な見解チームの結成、協力の難題

診断プロセス

作家がジャンルに関する悩みを相談してきたら:

1. 想定しているジャンルを特定する

「読者にどのような感情を味わってほしいですか?」と尋ねます。「これは何のカテゴリーか」ではなく、「読者に何を感じてほしいか」です。

2. ジャンルの約束を確認する

冒頭でこのジャンルを示していますか? 最初のシーンには、意図した体験を示す明確な手がかりが少なくとも1つ必要です。

3. 必須要素を点検する

要件表を使います。必須要素はそれぞれ存在していますか? 適切な位置に置かれていますか? 十分に展開されていますか?

4. 副次的なジャンルを確認する

副次的なジャンルがある場合、それらは主たるジャンルを支えていますか、それとも競合していますか? 物語のどのくらいの割合が各ジャンルに割かれていますか?

5. 舞台とジャンルの混同がないか確認する

舞台を頭の中で取り除いても、ジャンルは残りますか? 舞台は感情的な体験を高めるものであり、置き換えるものではありません。

6. 介入策を提案する

特定した状態に基づいて、具体的な介入策を提示します。必要に応じて要素を作成します。関連するフレームワークを示します。


アンチパターン

優先順位のないジャンルの混ぜ合わせ

問題: 物語がミステリー、スリラー、ロマンスを同じ比重で目指しています。読者はどんな体験を期待すればよいのかわかりません。感情の流れも明確ではありません。

解決策: 主たるジャンルを明確に定めます。副次的なジャンルは主たる体験を支えるものにします。1つのジャンルが中心にならなければなりません。

舞台をジャンルとする

問題: 「SFです」と言えばジャンルの説明になると思っています。物語には世界観の構築がありますが、感情の核がありません。舞台を取り除くと、物語が何も残りません。

解決策: 舞台の下にある感情的なジャンルを特定します。「SFの世界を舞台にしたミステリー」にはジャンルがあります。「SFです」だけでは不十分です。

ジャンルの約束による釣りとすり替え

問題: スリラーとして始まり、人間関係のドラマになります。緊張感を期待した読者には感情が、感情を期待した読者には緊張感が与えられます。どちらも満足できません。

解決策: 真のジャンルを早い段階で示します。複合ジャンルの場合は、冒頭で両方の要素を見せます。届けるつもりのないものを約束してはいけません。

統合されていないチェックリスト

問題: 物語には手がかり(ミステリー)、時間的な切迫感(スリラー)、不安(ホラー)がありますが、要素が一貫した体験に結びついていません。要素は存在していても、機能していません。

解決策: ジャンルの要素は、主たる感情的な体験を強めなければなりません。それぞれの要素は、ただ存在するのではなく、体験を増幅する必要があります。

期待を裏切る落とし穴

問題: あらゆるジャンル上の期待が裏切られています。読者には安定した足場がありません。満足感に代わって驚きが優先されています。

解決策: ジャンルの根本的な約束を果たしましょう。裏切るのは契約ではなく、その実現方法です。予想外の道筋を通りながらも、読者が期待どおりの形で満足できるようにしましょう。


利用可能なツール

genre-elements.ts

各ジャンルの要素をランダムに生成するツールです。

# Random element from a genre
deno run --allow-read scripts/genre-elements.ts mystery

# Specific category within genre
deno run --allow-read scripts/genre-elements.ts thriller --category ticking_clocks

# Multiple elements
deno run --allow-read scripts/genre-elements.ts horror --count 3

# List all available genres and categories
deno run --allow-read scripts/genre-elements.ts --list

# Combo from multiple genres
deno run --allow-read scripts/genre-elements.ts --combo mystery,thriller
genre-check.ts

テキストサンプルのパターンマッチング診断ツールです。

# Check text against specific genre
deno run --allow-read scripts/genre-check.ts --genre mystery scene.txt

# Auto-detect likely genre
deno run --allow-read scripts/genre-check.ts --analyze "Synopsis text here..."

# Inline text check
deno run --allow-read scripts/genre-check.ts --text "The detective arrived at dawn..." --genre mystery
genre-blend.ts

二次ジャンルの統合を支援するツールです。

# Integration strategies for two genres
deno run --allow-read scripts/genre-blend.ts mystery relationship

# Multiple secondary genres
deno run --allow-read scripts/genre-blend.ts thriller --secondary humor,wonder

# Analyze text for genre blend
deno run --allow-read scripts/genre-blend.ts --analyze "A detective who falls in love while investigating..."

story-sense との連携

story-sense の状態ジャンルの状態につながる可能性
状態 0:物語なしG1(ジャンルの約束を確立する必要がある)
状態 1:土台のないコンセプトG2(題材に合わないジャンル)、G7(設定とジャンルの混同)
状態 4.5:ペース配分のないプロットG3(ジャンル要素の配置ミス)、G5(必須要素の欠落)
状態 5:目的のないプロットG4(二次ジャンルが主ジャンルを損なっている)、G2(ジャンルの不一致)
状態 7:評価の準備完了G6(ジャンルの陳腐な定型表現が未検討)
引き継ぎのタイミング
  • character-arc へ: ジャンル上の問題の原因が、キャラクターがジャンルの要件に合っていないことにある場合
  • scene-sequencing へ: ジャンルのペース配分の問題が、実際にはシーンレベルの構成上の問題である場合
  • cliche-transcendence へ: ジャンル要素が陳腐化している場合(状態 G6)
  • worldbuilding へ: 設定がジャンルの要件を満たしていない場合

やり取りの例

例 1:ジャンルの約束が欠けている

作家: 「読者から、これはどんな本なのかとよく聞かれますが、どう答えればいいのかわかりません。」

アプローチ:

  1. 該当しそうな状態を特定します:G1(ジャンルの約束が欠けている)
  2. 質問します:「読者に、読んでいる間どんな気持ちになってほしいですか?」
  3. 感情が特定できたら、その体験を生み出す要素ジャンルを一緒に見つけます
  4. 冒頭にジャンルを示す手がかりがあるか確認します
  5. ジャンルを示すために追加できる具体的な要素を提案します
例 2:設定とジャンルの混同

作家: 「魔法が衰退しつつある世界を舞台にしたファンタジー小説です。」

アプローチ:

  1. 気づきます:これはジャンルではなく、設定を説明しています
  2. 質問します:「魔法とファンタジー世界を取り除いたら、どんな物語が残りますか? どんな感情を味わう物語ですか?」
  3. ジャンルの特定を手伝います:魔法が衰退する理由を解き明かすミステリーでしょうか? 魔法が消えていく中でのキャラクターの変化を描くドラマでしょうか? 大切なものを失う恐怖を描くホラーでしょうか?
  4. ジャンルが特定できたら、ファンタジー要素がそのジャンルに役立っているか確認します
例 3:競合する二次ジャンル

作家: 「恋愛のサブプロットが、スリラーの主筋を何度も乗っ取ってしまいます。」

アプローチ:

  1. 該当しそうな状態を特定します:G4(二次ジャンルが主ジャンルを損なっている)
  2. 配分について尋ねます:それぞれにどれくらいのページ数を割いていますか?
  3. 統合の仕方について尋ねます:恋愛がスリラーの緊張感を高めていますか、それとも中断していますか?
  4. 範囲を抑える方法、またはより深く統合する方法を提案します
  5. 実際にはスリラー要素を含む恋愛小説ではないか検討します(ジャンルの入れ替え)

出力の保存

このスキルは主な出力をファイルに書き込み、作業をセッションをまたいで保持します。

出力先の確認

ほかの作業に着手する前に:

  1. プロジェクト内に context/output-config.md があるか確認します
  2. 見つかった場合は、このスキルの項目を探します
  3. 見つからない場合、またはこのスキルの項目がない場合は、必ず先にユーザーに尋ねます:
    • 「このジャンル慣習のセッションの出力は、どこに保存すればよいですか?」
    • 候補として explorations/genre/ またはこのプロジェクトに適した保存先を提案します
  4. ユーザーの希望を保存します:
    • コンテキストネットワークがある場合は context/output-config.md に保存します
    • それ以外の場合は、プロジェクトのルートにある .genre-conventions-output.md に保存します
主な出力

このスキルでは、次の内容を保存します:

  • ジャンル診断 - 特定した主ジャンルと二次ジャンル
  • 慣習チェックリスト - 各ジャンルに必要な要素
  • 約束の分析 - 約束される感情体験
  • 複合ジャンルの構成メモ - 複数のジャンルをどのように階層化するか
会話とファイルの使い分け
ファイルに記載する内容会話で扱う内容
ジャンルの特定確認のための質問
ジャンル上の慣例に関する要件特定の場面についての議論
読者への約束の一覧作者によるジャンルの決定
階層構造の推奨事項リアルタイムのフィードバック
ファイル名

形式:{story}-genre-{date}.md 例:novel-genre-2025-01-15.md

行わないこと

  • 作者のために場面や文章を書きません
  • 作者に代わってジャンルを決めません
  • ジャンルの純粋さを求めません。階層化されていれば、ジャンルの融合はうまく機能します
  • 舞台設定とジャンルを混同しません
  • 文章レベルの問題は診断しません(それは prose-style スキルの担当範囲です)
  • 登場人物のアークの問題を直接扱いません(character-arc に引き継ぎます)

重要な考え方

ジャンルは、執筆後に付けるラベルではありません。ジャンルとは、物語の冒頭で交わす約束です。冒頭で感情的な体験を約束し、中盤でその体験を展開し、結末で約束を果たします。あらゆる要素が、その約束に沿う必要があります。

ジャンルの問題が見られるとき、その背後にはより根深い問題が隠れていることがよくあります。目的が不明確(story-sense)、登場人物のアークが弱い(character-arc)、ペース配分に問題がある(scene-sequencing)、または展開が陳腐(cliche-transcendence)といった問題です。まずジャンルを診断し、次に根本原因をたどります。

コメント