mcpField
P
ppw:caption

ppw:caption

github.com/lylll9436ドキュメント39075 回インストール31 週間前に更新
リポジトリ

ppw:caption について

ppw:captionは、学術論文の図表向けにLaTeXキャプションを作成・修正するスキルです。空間データに応じて情報を収集し、指定された場合は誌面テンプレートに合わせて調整したうえで、対象の`.tex`ファイルに書き込みます。

主な機能

  1. 01図・表のキャプション作成と修正
  2. 02必要に応じた空間メタデータの反映
  3. 03指定された誌面テンプレートへの文体調整
  4. 04LaTeXファイル内の指定箇所への書き込み
  5. 05不足情報をプレースホルダーで補わない処理

活用シーン

  1. 01地図やGIS図のキャプション作成
  2. 02論文の表キャプションの改善
  3. 03`.tex`ファイルへの誌面スタイルに沿った追加

インストール

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

$npx skills add https://github.com/lylll9436/paper-polish-workflow-skill --skill ppw:caption

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

詳細

目的

このスキルは、学術論文の図表キャプションを生成または最適化します。空間図(地図、GIS 出力、航空写真)の場合は、地理情報に対応した質問戦略を用いて、研究対象地域、データソース、CRS のメタデータを積極的に収集します。空間情報を含まない図表の場合、地理に関する質問は一切行いません。読み取り前に書き込まないパターンに従って、正しい \caption{} の位置にあるユーザーの .tex ファイルへ直接出力します。対象ジャーナルが指定されている場合は、ジャーナルのテンプレートに合わせてキャプションの長さとスタイルを調整します。

コアプロンプト

出典:awesome-ai-research-writing — 生成図的标题 + 生成表的标题

図のキャプションプロンプト:

# Role
你是一位经验丰富的学术编辑,擅长撰写精准、规范的论文插图标题。

# Task
请将我提供的【中文描述】转化为符合顶级会议规范的【英文图标题】。

# Constraints
1. 格式规范:
   - 如果翻译结果是名词性短语:请使用 Title Case 格式,即所有实词的首字母大写,末尾不加句号。
   - 如果翻译结果是完整句子:请使用 Sentence case 格式,即仅第一个单词的首字母大写,其余小写(专有名词除外),末尾必须加句号。

2. 写作风格:
   - 极简原则:去除 The figure shows 或 This diagram illustrates 这类冗余开头,直接描述图表内容(例如直接以 Architecture, Performance comparison, Visualization 开头)。
   - 去 AI 味:尽量避免使用复杂的生僻词,保持用词平实准确。

3. 输出格式:
   - 只输出翻译后的英文标题文本。
   - 不要包含 Figure 1: 这样的前缀,只输出内容本身。
   - 必须对特殊字符进行转义(例如:`%`、`_`、`&`)。
   - 保持数学公式原样(保留 `$` 符号)。

表のキャプションプロンプト:

# Role
你是一位经验丰富的学术编辑,擅长撰写精准、规范的论文表格标题。

# Task
请将我提供的【中文描述】转化为符合顶级会议规范的【英文表标题】。

# Constraints
1. 格式规范:
   - 如果翻译结果是名词性短语:请使用 Title Case 格式,即所有实词的首字母大写,末尾不加句号。
   - 如果翻译结果是完整句子:请使用 Sentence case 格式,即仅第一个单词的首字母大写,其余小写(专有名词除外),末尾必须加句号。

2. 写作风格:
   - 常用句式:对于表格,推荐使用 Comparison with, Ablation study on, Results on 等标准学术表达。
   - 去 AI 味:尽量避免使用 showcase, depict 等词,直接使用 show, compare, present。

3. 输出格式:
   - 只输出翻译后的英文标题文本。
   - 不要包含 Table 1: 这样的前缀,只输出内容本身。
   - 必须对特殊字符进行转义(例如:`%`、`_`、`&`)。
   - 保持数学公式原样(保留 `$` 符号)。

トリガー

次の依頼があった場合に有効になります:

  • 図または表のキャプションを書く、生成する、作成する
  • 既存の弱いキャプションを最適化する、改善する、書き直す
  • 図のタイトルを書く、図表の説明を生成する、タイトルを最適化する、図表の説明を書き直す

呼び出し例:

  • 「図のキャプションを書いて」/「图表标题を帮我写」
  • 「この表のキャプションを最適化して」/「我的图表说明を优化」
  • 「CEUS の要件に適合する図のキャプションを生成して」/「帮我生成符合期刊要求的图题」
  • 「地図の図のキャプションを改善して」
  • 「CEUS の要件に適合する図のキャプションを生成して」

モード

モードデフォルト動作
directはい質問戦略に基づく質問の後、1 回でキャプションを出力します
batchサポート対象外です — キャプションごとに個別の図表コンテキストが必要です

デフォルトモード: direct。ユーザーが図表のコンテキストを提示すると、完全な LaTeX キャプションを 1 回で受け取れます。

パスの選択(direct モード内):

  • ユーザーが改善対象の既存キャプションを提示する → 最適化パス
  • ユーザーが内容の説明だけを提示する → 生成パス
  • 曖昧な場合 → 「改善する既存のキャプションはありますか?それとも、説明から生成しましょうか?」と尋ねます。

参考資料

必須(常に読み込み)
ファイル用途
references/expression-patterns.md学術的な表現パターンの概要 — エントリーポイントとして常に読み込みます
補助資料(条件に応じて読み込み)
ファイル読み込み条件
references/expression-patterns/geography-domain.md図の種類が空間図(地図、写真、GIS 出力)の場合。研究対象地域の説明、空間描写のパターン、計画関連の表現を提供します
ジャーナルテンプレート(条件に応じて読み込み)
  • ユーザーが対象ジャーナルを指定した場合は、references/journals/[journal].md を読み込みます。
  • テンプレートが見つからない場合は、対応を拒否します:「[X] のジャーナルテンプレートが見つかりません。利用可能なもの:CEUS」
  • ジャーナルが指定されていない場合は、一度だけ確認します。指定しないとの回答があれば、一般的な学術スタイルを使用します。

質問戦略

開始前に、次の情報を収集します:

  1. 図または表の種類(必須 — 空間に関する質問が必要かどうかを判断します): 地図/グラフ/図解/写真/データ表?

  2. 対象ジャーナル(指定されていない場合に確認。指定しないとの回答があれば、一般的な学術スタイルを使用します)

  3. 図の種類が空間図(地図、写真、GIS 出力)の場合:

    • 研究対象地域/都市名(例:「北京の朝陽区」)
    • データソースの概要(例:「OpenStreetMap 2023」、「Landsat-8 imagery」)
    • CRS(ユーザーが知っている場合のみ確認。不確かな場合は省略し、無理に尋ねないでください)
    • 主要な凡例項目(地図またはグラフに表示される凡例がある場合のみ確認)
  4. 図の種類が非空間図(棒グラフ、折れ線グラフ、模式図、データ表)の場合: 地理に関する質問はすべて省略します。言及されていない場合は、データソースのみを尋ねます。

ルール:

  • 作業を進める前に尋ねる質問は、最大 3 つまでです
  • 空間メタデータ(CRS、凡例)が不足している場合は、該当する節を自然に省略します — キャプションに [MISSING: ...] の仮置きテキストを入れてはいけません
  • .tex ファイルに複数の \caption{} コマンドがある場合は、書き込む前に対象の \label{}(例: \label{fig:study_area})を確認します
  • direct モードで、すでに十分なコンテキストが提示されている場合は、事前の質問なしで進めます

ワークフロー

ステップ 0:ワークフローの記憶を確認
  • .planning/workflow-memory.json を読み込みます。ファイルが存在しない、または空の場合は、ステップ 1 に進みます。
  • ログの直近 1~2 件のエントリが、ログ内にしきい値以上の回数出現している ppw:caption を含む既知のパターンに一致するか確認します。アルゴリズムの詳細は、skill-conventions.md > Workflow Memory > Pattern Detection を参照してください。
  • パターンが見つかった場合は、AskUserQuestion を通じて次の提案を提示します:
    • 質問:「よく使われるワークフローが検出されました:[pattern](N 回出現)。ppw:caption を direct モードで実行しますか?」
    • 選択肢:「はい、続行します」/「いいえ、通常どおり続行します」
  • ユーザーが承諾した場合:モードを direct に設定し、Ask Strategy の質問をスキップします。
  • ユーザーが拒否した場合、または AskUserQuestion を利用できない場合:通常モードで続行します。
ステップ 1:コンテキストを収集
  • references/expression-patterns.md の概要を読み込みます。
  • ジャーナルが指定されている場合は、references/journals/[journal].md を読み込みます。ファイルが見つからない場合は、次のメッセージで拒否します:「[X] のジャーナルテンプレートが見つかりません。利用可能なもの:CEUS」
  • ユーザー入力を読み込みます:ファイルが提供されている場合は Read ツールを使用し、それ以外の場合は貼り付けられたテキストの説明を受け付けます。
  • 入力によってすでに回答されている内容を除き、不足している情報を補うために Ask Strategy の質問を実行します。
  • パスを判定します:改善対象の既存キャプションが提供されている場合は Optimize パス、内容の説明のみが提供されている場合は Generate パスを選択します。判断が曖昧な場合はユーザーに確認します。
  • ワークフローを記録: .planning/workflow-memory.json に {"skill": "ppw:caption", "ts": "<ISO timestamp>"} を追加します。ファイルが存在しない場合は [] として作成します。ログの長さが 50 以上の場合は、最も古いエントリを削除します。
ステップ 2a:Generate パス(内容の説明から新しいキャプションを作成)
  • キャプションの生成では、図または表に該当する上記の Core Prompt の制約を主要な指示として適用します。

  • 図の種類が空間情報を示すものである場合は、references/expression-patterns/geography-domain.md を読み込みます。

  • 図と表の分岐ロジックを適用します:

種類キャプションの重点
地図空間範囲、CRS(提供されている場合)、データソース、スケールバーへの言及
グラフ/図説明する変数、傾向または比較の目的、データソース
写真対象、場所(提供されている場合)、データソースまたは撮影者のクレジット
表行/列の意味、統計的背景、単位、データソース
  • 次の固定された 3 部構成の LaTeX 形式でキャプションを作成します: \caption{[対象/調査地域]。[主要な内容の説明]。[データソースの記述]。}
  • ジャーナルテンプレートが読み込まれている場合は、その長さとスタイルに合わせます。
ステップ 2b:Optimize パス(既存の不十分なキャプションを改善)
  • 図の種類が空間情報を示すものである場合は、references/expression-patterns/geography-domain.md を読み込みます。
  • 既存のキャプションについて、完全性(対象/内容/ソース)、空間メタデータの不足、用語の正確さ、ジャーナルの長さの要件への適合性を確認します。
  • Generate パスと同じ分岐ロジックおよび 3 部構成の形式を使って書き直します。
  • [MISSING: ...] のプレースホルダーは追加せず、利用可能な内容から生成します。
ステップ 3:ファイルに書き込む
  • 対象の .tex ファイルを読み込みます(Write の前に必須です。挿入位置となる \caption{} または \caption[]{} を探します)。
  • ファイル内に \caption{} コマンドが複数ある場合は、書き込む前に対象の \label{} を確認するため、Ask Strategy のルールを適用します。
  • 特定した位置にある既存の \caption{} の内容を置き換えます(空の場合は挿入します)。
  • 更新したファイルを書き込みます。
  • Write ツールが失敗した場合は、会話内に最終的なキャプションを提示し、\caption{} の位置に貼り付けるよう案内します。

出力仕様

出力形式条件
caption_latex.tex ファイルに書き込まれる LaTeX \caption{...} 文字列常時 — ファイル入力があり、Write が成功した場合
caption_latex会話内の LaTeX \caption{...} 文字列フォールバック — Write が失敗した場合、またはテキストが貼り付け入力された場合

LaTeX キャプション形式の例:

図(空間情報あり):

\caption{Distribution of urban green space in Shenzhen Nanshan District. Data derived from OpenStreetMap 2023. Projected in WGS 84 / UTM Zone 50N.}

図(空間情報なし):

\caption{Comparison of model accuracy across three benchmark datasets. All values are F1 scores. Data from the COCO 2017 validation set.}

表:

\caption{Descriptive statistics of land use change by category, 2010--2020. All areas reported in km\textsuperscript{2}. Data from the Third National Land Survey.}

エッジケース

状況対応
ジャーナルが指定されていますが、テンプレートが見つかりません拒否します:「[X] のジャーナルテンプレートが見つかりません。利用可能なもの:CEUS。」
図の種類が空間図ですが、研究対象地域またはデータソースが提示されていません利用可能な内容から生成し、不足している節は省略します。[MISSING: ...] は使用しません
.tex ファイルに複数の \caption{} コマンドがあります書き込む前に、対象の \label{} を尋ねます
ユーザーが既存のキャプションと内容の説明の両方を提示しています既定では最適化の手順を使用します。不明確な場合は確認します
図の種類が不明確です(「自分の図」など)分岐ロジックに進む前に種類を尋ねます
入力が説明のないファイルパスのみですファイルを読み込み、内容が不明確な場合は確認を求めます
ジャーナルテンプレートのキャプション形式が標準と異なりますジャーナルテンプレートを優先し、既定の3部構成の形式ルールは適用しません
ユーザーがCRSの提示を断りましたCRSの節全体を省略し、プレースホルダーを残しません

フォールバック

シナリオフォールバック
構造化インタラクションを利用できませんプレーンテキストで1~3個の質問(図の種類、ジャーナル、空間図の場合は研究対象地域)を尋ねます
geography-domain.md のリーフがありません一般的な空間記述で進め、品質が低下することをユーザーに警告します
ジャーナルテンプレートがありません(ジャーナル未指定)1回だけ尋ね、断られた場合は一般的な学術スタイルを使用します
書き込みツールが失敗しますキャプションを会話内に提示し、\caption{} の位置に貼り付けるよう案内します
.tex ファイルが見つからないか、読み取りできませんキャプションを会話内に提示します

例

呼び出し:「広州の都市ヒートアイランド分布を示す地図のキャプションを書いてください。」

質問戦略のやり取り:

  • 種類:地図(空間図 → 地理に関する質問を適用)
  • 研究対象地域:広州
  • データソース:Landsat-8 imagery、2022
  • CRS:ユーザーは不明 → 省略
  • ジャーナル:CEUS

生成されたキャプション(CEUSテンプレートとgeography-domain.mdを読み込んだ後):

\caption{Spatial distribution of urban heat island intensity in Guangzhou. Land surface temperature derived from Landsat-8 imagery (2022). City boundary data from the National Geomatics Center of China.}

**書き込み手順:**スキルが paper.tex を読み込み、\label{fig:uhi} にある \caption{} を見つけ、内容を置き換えてファイルに書き込みます。


スキル:caption-skill 規約:references/skill-conventions.md

コメント