Community研究&データ分析github.com

Shass27/stem-notes

STEM教材(講義スライド、教科書章、スキャン問題用紙、画像(png/jpg)、PowerPoint/Wordファイル)からLaTeX形式の式・定義シート、完全解答付き問題解説、要約ノートを生成します。ユーザーが参考資料からノート、公式シート、チートシート、解答、復習資料を求めた際に使用します。

stem-notes とは?

このスキルは、STEM(科学・技術・工学・数学)分野の教材からLaTeX形式の学習資料を自動生成するエージェントスキルです。PDF、画像、PowerPoint/Wordファイルなど多様なソース形式に対応し、講義スライドや教科書の内容を解析して、公式シート、完全解答付き問題解説、要約ノートの3種類の出力を生成します。ワークフローは、ソースファイルの種類判別(テキストPDFかスキャン画像PDFか)、ツール依存関係の確認、ユーザーへの多肢選択式質問による出力内容・スタイル・コンパイル有無の決定、全ページの読み取り・解析、問題の解答作成と検証(検算Pythonスクリプトを含む)、テンプレートに基づくLaTeXファイルの生成、オプションでのコンパイル(tectonicまたはlatexmk)の順に進みます。ユーザーの選択を尊重し、インストールやコンパイルはMCQ回答後にのみ実行します。特別な特徴として、数値結果が印刷済み解答と一致しない場合にその矛盾を明記し、強引に合わせないという思想があります。また、ソースの誤字も脚注で報告します。対応プラットフォームはClaude Codeを想定しており、スキルファイル内の参考文献(questions.md、style-guide.md、tooling.md)とLaTeXテンプレートを用いて動作します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Shass27/stem-notes/tree/main

Installed? Explore more 研究&データ分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

STEM補足ノート (LaTeX)

任意のSTEMソース資料から .tex ファイルとして学習資料を生成します。ユーザーは多肢選択式質問(AskUserQuestion)を通じてすべての選択を決定するため、構築前に質問をしてください。

対応ファイル(該当ステップに到達したら参照):

  • references/tooling.md: ソフトウェア、インストールコマンドとサイズ、変換コマンド
  • references/questions.md: MCQ質問バンク(インテイクラウンド、コンパイル質問を含む)
  • references/style-guide.md: レイアウト、ラベリング、解答形式、検証と矛盾ルール
  • templates/formula_sheet.tex、templates/solutions.tex、templates/summary_notes.tex: コピー用プリアンブル

ワークフロー

1. ソースの棚卸し

  • ユーザーが指定したファイル(フォルダまたは@パス)をリストアップします。PDF、PNG/JPG、PPTX/DOCXに対応。
  • 各PDFについて pdfinfo(ページ数)と pdftotext -layout を実行してセッションスクラッチパッドに取り込み、単語数をカウントします。1ページあたり約50単語未満の場合はスキャンまたは画像主体のファイルと判断:すべてのページを画像として読み取ります。テキストダンプは無価値です。
  • スライドデッキは数式や図を画像としてのみ保持していることがよくあります。テキストが存在する場合でも、ページを表示してください。

2. ツールの確認(最初は読み取りのみ)

which pdfinfo pdftotext pdftoppm soffice tectonic pdflatex を実行します。不足しているものがあれば、最初のMCQラウンドでそのサイズと共に質問します(references/tooling.md参照)。MCQ回答なしにインストールしないでください。 LibreOfficeはOfficeファイルが存在する場合のみ必要です。ユーザーが質問で返答した場合(例:「ストレージはどのくらい?」)、回答してから再度質問してください。

3. インテイクMCQ

references/questions.mdのラウンドを、AskUserQuestion呼び出しごとに最大4問まで質問します。推奨オプションを最初に置き、「(推奨)」とマークします。ユーザーが選択した出力に対応する質問グループのみを質問します。コンパイル質問は常に最後に行います。 回答は文字通り読み取ります。自由記述回答は選択肢を上書きします。

4. すべてを読み取る

  • PDF:pagesを指定してReadツールを使用(1回の呼び出しで最大20ページ、大きな範囲は分割)、すべてのファイルの全ページ範囲読み取りを1つの並列バッチで発行します。Readツールにはpopplerのpdftoppmが必要です。
  • 画像:直接読み取ります。
  • PPTX/DOCX:スクラッチパッドでPDFに変換してから(soffice --headless --convert-to pdf --outdir <scratchpad> file)、PDFとして読み取ります。
  • すべての質問や例について、ソースファイル、スライド/ページ、問題番号、ソースが既に解答を提供しているか(完全または一部)、印刷された解答を記録します。

5. 解答と検証

  • 対象範囲のすべての問題を解きます。非自明な問題(曲線近似、積分、モーメントバランス、多段階数値計算)については、スクラッチパッドで短い python3 スクリプトを使って数値を確認します。
  • 印刷された解答と比較します。不一致がある場合は再確認し、文書内およびユーザーに矛盾を報告します。 印刷された解答に合わせて計算をねじ曲げることは決してしません。
  • ソースの誤字(誤った符号、誤った項、矛盾したデータ)を脚注または「ここにある理由」ノートでフラグ付けします。

6. .tex ファイルを作成

  • templates/の該当テンプレートから開始:プリアンブルを保持し、%% TODOプレースホルダを置き換えます。
  • references/style-guide.mdに従います:すべての項目にソース・スライド/ページ・問題番号をタグ付け、カバレッジテーブルを追加、各問題を完全に再記述、解答をボックスで囲みます。
  • ASCIIのみのソースを使用します。コメントは1行の % コメントのみで、複数行のバナーコメントは使用しません。
  • デフォルトの出力フォルダはソースの隣の latex/ です(ユーザーが別途選択しない限り)。

7. ユーザーが選択した場合のみコンパイル

  • tectonic:tectonic -X compile file.tex。MacTeX:latexmk -pdf file.tex。エラーを修正してクリーンになるまで再コンパイルします。
  • ユーザーが停止を指示した場合は、即座にタスクを停止(TaskStop)し、再試行しません。

8. 報告

簡潔にリストアップ:作成したファイル、各ファイルの内容、スキップした問題(ソース内で既に解答済み)、発見した矛盾、コンパイル状況。コンパイルしなかった場合はその旨を明確に述べます。

関連スキル