mcpField
B
bmad-ingest

bmad-ingest

github.com/bmad-code-org生産性55.1k951 回インストール今日更新
リポジトリ

bmad-ingest について

文字起こし、会話、ボイスメモ、長文書から、出典を追跡できるノートを作るBMadスキルです。原文を保管し、各項目の出典箇所を示したうえで、別途レビューして漏れや誤帰属を確認します。

主な機能

  1. 01原文と添付ファイルの保管
  2. 02テンプレートと拡張の選択
  3. 03ノート項目の出典箇所を明記
  4. 04決定・条件・訂正の記録
  5. 05原文との照合レビュー

活用シーン

  1. 01会議の文字起こしからノートを作成
  2. 02メールやチャットの整理
  3. 03ボイスメモからアクションを抽出
  4. 04長文書から出典付きノートを作成

インストール

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

$npx skills add https://github.com/bmad-code-org/bmad-method --skill bmad-ingest

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

同梱ファイル

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

bmod.toml
customize.toml
evals/
triggers.json

詳細

取り込み

生の入力(文字起こし、チャットやメールのスレッド、ボイスメモ、長文書)を、人やエージェントが生の入力の代わりに読むメモに変換します。読み手は元の入力を確認せずにメモに基づいて行動するため、すべての項目は元の入力の該当箇所をたどれる必要があり、元の入力にない内容を加えてはいけません。元の入力は受け取った状態のまま保存されるため、誰でも確認できます。

呼び出し元が指示した場合、またはその場に人がいない場合は、ヘッドレスで実行します。質問はしません。

起動時

  1. 設定:uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core.output_folder。スクリプトが見つからない場合:ここでは BMad がセットアップされていません。bmad スキルのセットアップを提案してください。必要に応じて、先に bmad をインストールします(npx skills add bmad-code-org/BMAD-METHOD --skill bmad)。その後、もう一度実行します。
  2. カスタマイズ:uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow。それ以外のエラーが発生した場合は、{skill-root}/customize.toml を読み、デフォルト値を使用します。{workflow.activation_steps_prepend} の各項目を実行し、{workflow.persistent_facts} の各項目を今回の実行中の事実として保持します(file: の項目は、読み込む {project-root} 配下のパスまたは glob です)。続いて、{workflow.activation_steps_append} の各項目を実行します。

元の入力を保持する

{workflow.raw_folder} に元データを保管し、メモからバージョン管理上で有効な相対パスを使って元データにリンクできるようにします。保存するデータには YYYY-MM-DD-<slug> という名前を付けます。日付は入力が発生した日(期間がある場合は最終日)を使います。これは、元データまたはファイル名に示されている日付を使います。どちらにも日付がない場合は、今日の日付を入力の日付だと読み手が誤解するため、日付を付けません。同じ名前の別の元データがすでにある場合は、-2、-3 のように番号を付け加えます。

  • プロジェクト外にある元データ:{workflow.raw_folder} にコピーします。添付ファイル(画像、スライド、メールに添付されたファイル)がある場合は、元データと添付ファイルを含むフォルダーとして保存します。
  • すでにプロジェクト内にある元データ:そのままの場所に置いておきます。
  • URL:記録します。内容を取得して読んだ場合は、ページが変更または消失する可能性があるため、読んだ内容も {workflow.raw_folder} に保存します。

テンプレートを選ぶ

呼び出し元またはユーザーがパスか URL で指定したテンプレートを使用します。指定がない場合は、テンプレートを一覧表示します:uv run {project-root}/_bmad/scripts/list_templates.py {workflow.template_libraries} <libraries the caller passed> --folder ingest-templates --root <folder>。プロジェクトのスキルフォルダーに対して --root を 1 つ指定し、次にホストが読み込むユーザーレベルのスキルフォルダーごとに 1 つ指定します。スクリプトが見つからない場合:BMad のインストールが古く、このスクリプトは含まれていません。bmad スキルに更新を依頼してください。共有スクリプトが更新されたら、テンプレートを再度一覧表示します。各 tool_sources の記述に従って、そのライブラリのテンプレートにもアクセスします。unreachable ソース、{project-root}/_bmad/custom/ingest-templates または ~/.bmad/ingest-templates 以外の missing パス、orphaned 拡張機能があれば名前を挙げ、それらを使わずに先へ進みます。GitHub のファイルは gh を使って読みます。

ID で指定されたテンプレートがあればそれを使用します。そうでなければ、説明だけを基準に選び、理由を 1 行で述べ、近い候補も挙げます。適切なものがない場合、会話には meeting、それ以外には document を使用します。選択したテンプレートと、その extensions をそれぞれ読み込みます。競合がある場合は、一覧で先にあるものを優先します。

テンプレート内のコメントは作業の指針として使用し、メモには含めません。Review で確認するのは done when の内容です。元の入力に該当する内容がないセクションでは、その旨を 1 行で示します。ただし、コメントで任意とされている場合は除きます。

ノートを書く

ノートのフォルダーは、次のうち最初に該当するものです。

  1. 呼び出し元またはユーザーが指定したフォルダー。
  2. 作業中の内容から明らかなフォルダー。たとえば、隣に sources/ フォルダーがある文書を作成している場合などです。
  3. テンプレートの output。
  4. {workflow.notes_folder}。パス、または従うべき指示です。

呼び出し元またはユーザーから1つにまとめたノートを求められない限り、元データごとにノートを1つ作成します。名前は <raw name>.md とします。すでにこの元データ自身が作成したもの以外に同じ名前のノートがある場合は、-2、-3 のように番号を追加します。フロントマターには title、後から読む人が開くかどうかを判断するための1行の説明である description、template、ingested(今日の日付)、および source(ノートからの相対パス、または元データのURL)を記載します。

  • 各項目には、元データ内の該当箇所を示します。タイムスタンプ、セクション、メッセージの日付と話者、または短い引用などを指定します。
  • 担当者、日付、数値、条件(「Xが完了したら」「〜の場合に限り」)は、元データに記載されているとおりにのみ記し、それぞれ該当する項目に記載します。
  • 相対的な日付(「月曜日」「来週」)の横に、元データ自体の日付が分かる場合は暦上の日付を追加します。日付と曜日は記憶に頼らず、date または cal で確認します。
  • 人物の名前は元データに記載されているとおりにします。
  • 発言が後から撤回または訂正された場合は、最終的な状態を記し、変更があったことも示します。
  • 約束や顧客自身の言葉など、表現が重要な箇所は正確に引用します。
  • 重要な添付ファイルはコピーせず、元データのフォルダーからリンクします。
  • 聞き取れない箇所、話者が不明な箇所、食い違う説明など、元データ自体で未解決の事項は、最後に ## Unclear in the source セクションを設けて記載します。該当する事項がない場合は、このセクションを設けません。関係者が未解決のままにした質問は、テンプレートで指定された場所に記載します。

元データ全体を保持できないほど長い場合は、複数の部分に分けて読み、読み進めながらメモを続けます。書き始める前に、午前中の決定が午後に覆された場合など、部分ごとに変わった内容を元データに照らして整理します。

書き終えたら、source とノート内のすべての相対リンクが、ノートのフォルダーから解決できることを確認します。

レビュー

書き手は読み違いに気づきにくいため、ノートを書いていない人が確認します。ホストにサブエージェントがある場合はサブエージェントを使い、ない場合は自分でもう一度元データを確認します。レビュー担当者にノート、元データ、テンプレートを渡し、次の各項目について元データ内の該当箇所とともに返すよう依頼します。

  • 元データにあるのにノートから抜けている、または誤って記載されている決定、約束、条件。
  • 提案や申し出(「そうするつもりです」「できます」)が決定事項または割り当て済みとして記載されている項目、あるいは撤回された項目が以前の状態で記載されている箇所。
  • 誤った人物の発言として記載された引用または項目。
  • 該当する項目を裏付けていない出典。
  • テンプレートの done when が求めているのに、ノートで満たされていない事項。

レビュー担当者が誤った指摘をすることもあるため、対応する前に各指摘を元データと照らして確認します。ノートを修正し、なお不確かな点は ## Unclear in the source に記載します。

完了

ノートのパスと元データのパスをユーザーに伝え、その後 {workflow.on_complete} を実行します。ヘッドレス実行の場合は、note、raw、template、および unclear(## Unclear in the source 内の項目数)を含むJSONオブジェクトを1つ出力して終了します。

テンプレートを追加または置き換えるには、{project-root}/_bmad/custom/ingest-templates/、またはすべてのプロジェクトで使う場合は ~/.bmad/ingest-templates/ に、フロントマターに template、category、description を含むファイルを配置します。提供済みのテンプレートを置き換えるには同じIDを使い、既存のテンプレートに追加するには extends: <id> を指定します。元データやノートの保存先を変更する場合、またはテンプレートライブラリを追加する場合は、workflow.raw_folder、workflow.notes_folder、または workflow.template_libraries を指定して bmad-customize スキルを呼び出します。インストールされていない場合は、npx skills add bmad-code-org/BMAD-METHOD --skill bmad-customize を提案します。

コメント