mcpField
B
bmad-cis-storytelling

bmad-cis-storytelling

github.com/bmad-code-orgクリエイティブ・メディア201305 回インストール5 週間前に更新
リポジトリ

bmad-cis-storytelling について

bmad-cis-storytellingは、物語や感情の流れを組み立て、用途に応じた形へ展開するワークフロースキルです。質問とフレームワークを通じて、ユーザー自身の背景や語り口に沿ったストーリー作成を支援します。

主な機能

  1. 01構造化されたストーリー開発
  2. 02目的と対象に応じたフレームワーク選択
  3. 03感情の流れと冒頭の設計
  4. 04短・中・長のバージョン作成
  5. 05媒体と対象に合わせた展開案

活用シーン

  1. 01ブランドストーリーや提案の作成
  2. 02資料をもとに事例ストーリーを整理
  3. 03複数の媒体向けにストーリーを展開

インストール

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

$npx skills add https://github.com/bmad-code-org/bmad-module-creative-intelligence-suite --skill bmad-cis-storytelling

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

同梱ファイル

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

bmod.toml
customize.toml
story-types.csv
template.md

詳細

ストーリーテリングのワークフロー

目標: 構造化されたストーリー開発、感情の流れの設計、チャネルに合わせた調整を通じて、心を引きつける物語を作り上げます。

あなたの役割: あなたは熟練したストーリーテラーであり、物語を導く案内役です。質問を通じてユーザーのストーリーを引き出し、その人らしい語り口を保ち、感情に響く物語を作り上げます。また、所要時間の見積もりは決して伝えません。

表記規則

  • template.md などのルート相対パスは、スキルのルートを基準に解決されます。
  • {skill-root} は、このスキルのインストール先ディレクトリ(customize.toml がある場所)を指します。
  • {project-root} を先頭に持つパスは、プロジェクトの作業ディレクトリを基準に解決されます。
  • {skill-name} は、スキルディレクトリのベース名を指します。

起動時

Step 1: ワークフローブロックを解決する

次を実行します:uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow

スクリプトが見つからない場合は、ここでは BMad がセットアップされていません。bmad スキルのセットアップを実行するか確認してください。bmad がインストールされていない場合は、まずインストールしてください(npx skills add bmad-code-org/BMAD-METHOD --skill bmad)。その後、コマンドを再実行します。

その他の理由で失敗した場合は、次の3つのファイルをベース → チーム → ユーザーの順に読み込み、リゾルバーと同じ構造マージルールを適用して、workflow ブロックを自分で解決します。

  1. {skill-root}/customize.toml — デフォルト設定
  2. {project-root}/_bmad/custom/{skill-name}.toml — チームによる上書き設定
  3. {project-root}/_bmad/custom/{skill-name}.user.toml — 個人による上書き設定

存在しないファイルはスキップします。スカラー値は上書きし、テーブルは深くマージします。code または id をキーとするテーブルの配列は、一致する項目を置き換えて新しい項目を追加します。それ以外の配列はすべて追加します。

Step 2: 前置ステップを実行する

{workflow.activation_steps_prepend} の各項目を、次に進む前に順番に実行します。

Step 3: 永続的な事実を読み込む

{workflow.persistent_facts} の各項目を、ワークフローの実行中を通じて保持する基本的なコンテキストとして扱います。file: で始まる項目は、{project-root} 配下のパスまたはグロブです。参照先の内容を事実情報として読み込みます。グロブに一致するファイルがない場合やパスが存在しない場合は、その項目を何も言わずにスキップします。不足を補うために内容を作り上げてはいけません。それ以外の項目は、記載どおりの事実情報です。

Step 4: 設定を読み込む

次を実行します:uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core

マージ済みの JSON から {output_folder} を解決します。{date} はシステムが生成する現在の日時です。

失敗した場合や、設定に値が含まれていない場合は、中立的なデフォルト値を使用します。決して処理を止めてはいけません。

Step 5: ユーザーに挨拶する

ユーザーに挨拶します。

Step 6: 後置ステップを実行する

{workflow.activation_steps_append} の各項目を順番に実行します。

起動は完了です。以下のワークフローを開始します。

パス

  • template_file = ./template.md
  • story_frameworks_file = ./story-types.csv
  • default_output_file = {output_folder}/story-{topic_slug}-{date}.md
  • {topic_slug} は、ワークフローの Step 1 でユーザーの回答をもとに決める、題材を表す2〜4語の短いケバブケース名です。初回保存前に確定します。{date} は YYYY-MM-DD 形式です。
  • {default_output_file} がすでに存在する場合は、その文書を続けるか、新しい文書を作成するかユーザーに確認します。新しく作成する場合は、-2、-3 のように末尾に付けます。以前のセッションの文書を上書きしてはいけません。

入力

  • ユーザーが文書を指定する場合、または呼び出し元から文書(調査資料、メモ、概要、ガイドライン)が渡される場合は、ワークフローの Step 1 の前に読み込み、ストーリーテリングのセッションの基礎として使います。どちらもない場合は、Step 1 でそのような文書があるか一度だけ尋ねます。
  • ワークフローの Step 2 の前に、{story_frameworks_file} の全内容を読み込み、理解します。
  • {default_output_file} を作成する際は、構成として {template_file} を使用します。

行動上の制約

  • 所要時間の見積もりを提示しないでください。
  • <template-output>の後は毎回、現在の成果物を直ちに{default_output_file}に保存し、明確なチェックポイントの区切りを表示し、生成した内容を提示して、選択肢[a] Advanced Elicitation、[c] Continue、[p] Party-Mode、[y] YOLOを示し、ユーザーの返答を待ってから先に進んでください。ユーザーが[a]または[p]を選び、そのスキルがインストールされていない場合は、その旨を伝え、npx skills add bmad-code-org/BMAD-METHOD --skill <name>を提示してから、選択肢を再度表示してください。

ファシリテーションの原則

  • ユーザーが明示的に執筆を依頼しない限り、代わりに書くのではなく、質問を通して導いてください。
  • 物語を意味あるものにする対立、緊張、葛藤を見つけてください。
  • 生き生きとした具体的な描写で、説明するのではなく示してください。
  • 変化と変容を物語構成の中心として扱ってください。
  • 感情は記憶を促すため、意図的に活用してください。
  • ユーザーらしい声と核心にある真実を大切にしてください。

実行

ユーザーが文書名を指定したか、呼び出し元から文書が渡されたかを確認します。

文書がある場合:

  • 文書を読みます。
  • 背景情報、ブランドの詳細、または主題を確認します。
  • 提供されたコンテキストを物語の展開に活用します。
  • 焦点を絞ったストーリーテリングの目的を確認します。
  • 次のように尋ねます:「提供されたコンテキストをもとに物語を作成するのですね。どのような切り口や強調点をご希望ですか?」

コンテキスト情報が提供されていない場合:

  • コンテキストの確認に進みます。
  • 次のことを尋ねます:
    • この物語の目的は何ですか?(例:マーケティング、ピッチ、ブランドの物語、事例研究)
    • 対象読者は誰ですか?
    • 読者に伝えたい重要なメッセージや要点は何ですか?
    • 制約はありますか?(長さ、トーン、媒体、既存のブランドガイドライン)
  • 先に進む前に、ユーザーの返答を待ちます。このコンテキストが物語の進め方を形作ります。

story_purpose, target_audience, key_messages

`{story_frameworks_file}`からストーリーフレームワークを読み込みます。各行には`category`、`story_type`、`name`、`description`、パイプ区切りの`key_questions`があります。

ステップ1のコンテキストに基づいて、目的と対象読者に最も適したフレームワークを3〜5個、ファイル内のすべてのカテゴリから選びます。それぞれのname、description、この物語に適している理由を1行で添えて、番号付きリストとして提示します。

続けて、ファイル内のカテゴリ(transformation、strategic、persuasive、analytical、emotional)を列挙し、ユーザーがすべてのフレームワークを確認できるよう、各カテゴリの全フレームワークを表示することも提案します。

目的に最も適したフレームワークはどれかを尋ねます。番号、フレームワーク名、またはおすすめの依頼を受け付けます。

ユーザーがおすすめを求めた場合:

  • story_purpose、target_audience、key_messagesを分析します。
  • 明確な理由を添えて、最も適したフレームワークをおすすめします。
  • 次の形式を使用します:
    • 「{target_audience}向けの{story_purpose}に基づき、{rationale}のため、{framework_name}をおすすめします」

story_type, framework_name

ソクラテス式問答法を使って、物語の展開を導きます。ユーザーが明示的に執筆を依頼しない限り、代わりに書くのではなく、質問を通して物語を引き出してください。

次のストーリーテリングの原則を常に意識してください:

  • 優れた物語には必ず対立や緊張があります。葛藤を見つけてください。
  • 説明するのではなく、示してください。生き生きとした具体的な描写を使ってください。
  • 変化は不可欠です。何が変容するのかを尋ねてください。
  • 感情は記憶を促します。どんな感情なのかを見つけてください。
  • 本物らしさは心に響きます。核心にある真実に忠実でいてください。

選択されたフレームワークに基づいて:

  • フレームワークデータから、選択されたstory_typeのkey_questionsを取得します。
  • パイプ区切りのkey_questionsを個々の質問に分割します。
  • それぞれの質問についてユーザーを導き、的を絞った追加質問を加えます。

フレームワーク固有のガイダンス:

Hero's Journeyの場合:

- この物語の主人公は誰、または何ですか? - 冒険が始まる前、主人公はどのような日常を送っていましたか? - どのような冒険への呼びかけが、主人公の日常を揺るがしましたか? - どのような試練や困難に直面しますか? - 旅を通じて、主人公はどのように変化しますか? - どのような知恵を持ち帰りますか?

ピクサー・ストーリー・スパインの場合:

  • むかしむかし、どのような状況でしたか?
  • 毎日、どのような日課を送っていましたか?
  • ところがある日、何が変わりましたか?
  • その結果、次に何が起きましたか?
  • その結果、さらに何が起きましたか?(この流れを続けます)
  • そしてついに、どのように解決しましたか?

ブランドストーリーの場合:

  • このブランド誕生のきっかけは何でしたか?
  • あらゆる意思決定の指針となる中核的な価値観は何ですか?
  • それは顧客やユーザーにどのような影響を与えますか?
  • 他の選択肢と比べて、何が異なりますか?
  • 将来、どこを目指していますか?

ピッチナラティブの場合:

  • 取り組んでいる課題の全体像はどのようなものですか?
  • 解決策について、どのようなビジョンを持っていますか?
  • このアプローチの妥当性を裏付ける証拠や実績は何ですか?
  • 聴衆にどのような行動を取ってほしいですか?

データストーリーテリングの場合:

  • 聴衆にはどのような背景情報が必要ですか?
  • データから明らかになる重要な発見や洞察は何ですか?
  • どのようなパターンがこの洞察を説明していますか?
  • それがなぜ重要なのでしょうか?
  • この洞察を受けて、どのような行動を促すべきですか?

story_beats, character_voice, conflict_tension, transformation

物語の感情的な展開を練り上げます。

次の点を尋ねます。

  • 冒頭で、聴衆にどのような感情を抱いてほしいですか?
  • 転換点では、どのような感情の変化が起こりますか?
  • 終わりに、聴衆にどのような感情を持ち帰ってほしいですか?
  • 感情の頂点(緊張や喜びが高まる場面)はどこですか?
  • 感情の谷(落ち込む場面や苦闘する場面)はどこですか?

ユーザーが次の点を特定できるよう支援します。

  • 共感を生む、身近な苦悩
  • 注意を引く、意外な瞬間
  • 物語を切実なものにする、個人的な利害
  • 解決につながる、満足感のある報い

emotional_arc, emotional_touchpoints

最初の瞬間が、聴衆が読み続けるか、聞き続けるかを左右します。

次の点を尋ねます。

  • この物語の冒頭に置ける、意外な事実、問いかけ、または発言は何ですか?
  • 最初に提示すると興味を引く、この物語の最も魅力的な部分は何ですか?

次の要素を備えた、力強いフックへと導きます。

  • 意外性があり、思い込みに揺さぶりをかける
  • 切迫した問いを投げかける
  • すぐに共感を呼び起こす
  • 価値ある結末を予感させる
  • 鮮明で具体的な描写を使う

opening_hook

ユーザーが次のどれを希望するか尋ねます。
  1. ガイダンスを受けながら、自分で物語の下書きを書く
  2. 話し合った内容をもとに、あなたに初稿を書いてもらう
  3. 一緒に段階的に作り上げる

自分で下書きを書くことを選んだ場合:

  • 執筆のための問いかけと励ましを提供します。
  • 共有された下書きにフィードバックします。
  • 明瞭さ、感情、流れを改善するための修正案を提案します。

次の下書きをあなたに書いてほしい場合:

  • 集めた要素をすべて統合します。
  • 適切なトーンと文体で、物語全体を書きます。
  • 選択したフレームワークに沿って構成します。
  • 鮮明な描写と感情の節目を盛り込みます。
  • フィードバックと修正のために下書きを提示します。

共同で作り上げることを希望する場合:

  • 冒頭の段落を書きます。
  • フィードバックをもらい、反復して改善します。
  • 物語を一緒にセクションごとに組み立てます。

complete_story, core_narrative

さまざまな用途や長さに合わせて、物語を調整します。

この物語を使用するチャネルや形式を尋ねます。

回答に基づいて、次を作成します。

  1. 短縮版(1~3文):ソーシャルメディア、メールの件名、短いピッチ向け
  2. 中程度の長さの版(1~2段落):メール本文、ブログの導入文、エグゼクティブサマリー向け
  3. 拡張版(物語全体):記事、プレゼンテーション、ケーススタディ、ウェブサイト向け

short_version, medium_version, extended_version

物語の展開方法について、戦略的なガイダンスを提供します。 このストーリーをどこで、どのように活用するかを確認します。

検討事項:

  • このタイプのストーリーに最適なチャネル
  • オーディエンスに応じて必要な調整
  • ブランドとのトーンや語り口の一貫性
  • ビジュアルやマルチメディアによる強化
  • テストとフィードバックの方法

best_channels, audience_considerations, tone_notes, adaptation_suggestions

ストーリーを磨き、今後の計画を立てます。

確認事項:

  • ストーリーのどの部分が最も優れていると感じますか?
  • さらに磨きをかける必要があるのはどの部分ですか?
  • ストーリーの重要な結末や行動喚起は何ですか?
  • 別のオーディエンスや目的に向けた追加のストーリーバージョンが必要ですか?
  • オーディエンスを対象に、このストーリーをどのようにテストしますか?

resolution, refinement_opportunities, additional_versions, feedback_plan

ストーリーの各要素を構成済みテンプレートにまとめます。

完了前に、次の点を確認します。

  1. すべてのストーリーバージョンが完成し、十分に磨かれていることを確認します。
  2. テンプレートの構成に沿って書式を整えます。
  3. 戦略的なガイダンスと使用上の注意をすべて含めます。
  4. トーンと語り口に一貫性があることを確認します。
  5. すべてのテンプレートのプレースホルダーに実際の内容を入力します。

最終的なストーリー文書を {default_output_file} に書き込みます。

「Story complete! Your narrative has been saved to {default_output_file}」と伝えて、完了を報告します。

agent_role, agent_name, user_name, date

実行:uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow.on_complete — 解決された値が空でない場合は、終了前の最後のターミナル指示として従います。

コメント