ppw:abstract について
研究者向けに、研究資料からの抄録生成と、既存抄録のFarquhar 5文形式への再構成を行うスキルです。確認用のラベル付き版と、そのまま使える段落版を出力し、テンプレートがあれば雑誌の文体にも対応します。
主な機能
- 01研究資料から抄録を生成
- 02抄録を5文形式に再構成
- 03各文の役割をラベル付け
- 04整形済み段落を出力
- 05利用可能な雑誌の文体を適用
活用シーン
- 01論文メモから抄録を作成
- 02既存抄録の改稿
- 03投稿先に合わせた抄録の準備
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ lylll9436/ paper-polish-workflow-skill --skill ppw:abstractインストール後、Claude Code で/ppw:abstractを入力して読み込まれたか確認します。
詳細
目的
このスキルは、固定された5文構成のFarquharの公式に基づいて、学術論文の要旨を生成または最適化します。公式は、[1:貢献]、[2:課題]、[3:手法]、[4:証拠]、[5:主要な結果]で構成されます。このスキルには、相互に排他的な2つの経路があります。論文の各セクション、箇条書き、簡単な説明などの素材から新しい要旨を生成するか、既存の要旨を公式に沿うように再構成します。どちらの経路でも、まず文ごとに公式への適合を確認できるよう、ラベル付きの出力を生成します。続いて、クリップボードにコピーしてすぐ使える、通常の段落形式の要旨を生成します。対象の学術誌が指定された場合は、その学術誌固有のスタイル規則を適用します。
トリガー
次の依頼があった場合に起動します:
- 論文の内容をもとに、要旨の執筆、生成、作成を依頼する
- 既存の要旨の最適化、再構成、書き直しを依頼する
- 要旨の執筆、生成、書き直し、最適化を依頼する
呼び出し例:
- 「論文の要旨を書いてください」
- 「既存の要旨を最適化してください」
- 「この要旨を5文構成の公式に沿って再構成してください」
- 「序論と結果から、CEUS向けの要旨を作成してください」
モード
| モード | デフォルト | 動作 |
|---|---|---|
direct | はい | 5文構成の公式に沿って、1回で要旨を出力します |
batch | サポート対象外 — 要旨の作成には論文全体の文脈が必要です |
デフォルトモード: direct。ユーザーが内容を提示すると、1回のやりとりでラベル付きの要旨と通常形式の要旨を受け取れます。
経路の選択(directモード内):
- 入力が完成した要旨のような形式 → 再構成経路
- 入力が未加工の内容(セクション、箇条書き、「私の論文は…についてです」など) → 生成経路
- 判断が難しい場合 → 先に確認します
参照資料
必須(常に読み込み)
| ファイル | 用途 |
|---|---|
references/expression-patterns.md | 学術的な表現パターンの概要 |
補足資料(必要に応じて読み込み)
| ファイル | 読み込むタイミング |
|---|---|
references/expression-patterns/introduction-and-gap.md | 貢献と研究上のギャップの提示(1〜2文目) |
references/expression-patterns/conclusions-and-claims.md | 適切な強さに調整した主張の表現(1文目と5文目) |
references/expression-patterns/methods-and-data.md | 手法の説明(3文目。内容が弱い場合) |
references/expression-patterns/results-and-discussion.md | 証拠と結果の提示(4〜5文目) |
学術誌テンプレート(条件付き)
- ユーザーが対象の学術誌を指定した場合は、
references/journals/[journal].mdを読み込みます。 - テンプレートが見つからない場合は、対応を断ります:「[X] の学術誌テンプレートが見つかりません。利用可能なテンプレート:CEUS」
- 学術誌が指定されていない場合は、一度だけ尋ねます。指定しない場合は、一般的な学術スタイルを適用します。
質問方針
作業開始前に確認する事項:
- 経路:再構成する既存の要旨があるか、それとも未加工の内容から要旨を生成するか(入力から明らかな場合は省略)
- 対象の学術誌(未指定の場合は一度だけ尋ね、指定しない場合は一般的な学術スタイルを適用)
- 語数制限(分かる場合。通常は150〜300語。一度だけ尋ねます)
経路の推定:
- 要旨のような文章をユーザーが貼り付ける → 再構成経路
- セクション、箇条書き、「私の論文は…についてです」などを提示する → 生成経路
- 判断が難しい場合 → 「再構成する既存の要旨はありますか。それとも、提示された素材から要旨を生成しますか?」と尋ねます
ルール:
- 作業開始前に質問できるのは最大2つまでです。
- 入力から経路を明確に判断できる場合は、経路に関する質問を省略します。
directモードで十分な文脈がある場合は、事前に質問せずに作業を進めます。
ワークフロー
Step 0: ワークフローメモリの確認
.planning/workflow-memory.jsonを読み込みます。ファイルが存在しないか空の場合は、Step 1 に進みます。- 直近のログエントリ 1~2 件が、ログ内にしきい値以上の回数出現している
ppw:abstractの認識済みパターンを形成しているか確認します。アルゴリズムの詳細については、skill-conventions.md > Workflow Memory > Pattern Detectionを参照してください。 - パターンが見つかった場合は、AskUserQuestion を使って次の提案を提示します:
- 質問:「よく使われるワークフローが検出されました:[pattern](N 回出現)。
ppw:abstractを direct モードで実行しますか?」 - 選択肢:「Yes, proceed」/「No, continue normally」
- 質問:「よく使われるワークフローが検出されました:[pattern](N 回出現)。
- ユーザーが承諾した場合:モードを
directに設定し、Ask Strategy の質問をスキップします。 - ユーザーが辞退した場合、または AskUserQuestion が利用できない場合:通常モードで続行します。
Step 1: コンテキストの収集
references/expression-patterns.mdの概要を読み込みます。- ジャーナルが指定されている場合は、
references/journals/[journal].mdを読み込みます。ファイルが見つからない場合は、次のメッセージを表示して拒否します:「Journal template for [X] not found. Available: CEUS.」 - ユーザー入力を読み込みます:Read ツールを使ってファイルを読み込むか、会話に貼り付けられたテキストを使います。
- 入力が完成したアブストラクトのように読める場合は再構成し、素材の場合は生成します。曖昧な場合は質問します。
- オプトアウトの確認: ユーザーのトリガープロンプトをスキャンし、次のフレーズ(大文字・小文字を区別せず、完全一致)が含まれているか確認します:
english only、no bilingual、only english、不要中文。結果をbilingual_mode(true/false)として保存します。このフラグは、以下の Step 3 の出力を制御します。 - ワークフローの記録:
.planning/workflow-memory.jsonに{"skill": "ppw:abstract", "ts": "<ISO timestamp>"}を追記します。ファイルが存在しない場合は[]として作成します。ログの長さが 50 以上の場合は、最も古いエントリを削除します。
Step 2a: 生成パス(生の内容が提供された場合)
- 貢献とギャップの構成について、
references/expression-patterns/introduction-and-gap.mdを読み込みます。 - 主張を適切に調整する表現について、
references/expression-patterns/conclusions-and-claims.mdを読み込みます。 - ユーザーの手法の説明が不十分な場合は、
references/expression-patterns/methods-and-data.mdを読み込みます。 - 文 1(貢献)を構成します:「We introduce / propose / demonstrate / show...」で始めます。
- 文 2(難易度)を構成します:この問題が難しい理由、または重要である理由を示します。
- 文 3(手法)を構成します:主要な専門用語を含め、問題の解決方法を示します。
- 文 4~5 のために、
references/expression-patterns/results-and-discussion.mdを読み込みます。 - 文 4(エビデンス)を構成します:何を、どのベンチマークまたはデータセットで測定したかを示します。
- 文 5(主要な結果)を構成します:最も重要な数値または定性的な成果を示します。
Step 2b: 再構成パス(既存のアブストラクトが提供された場合)
- 生成パスと同じリーフヒントを読み込みます。
- 既存の各文を、5 つの構成位置のいずれかに対応付けます。
- ユーザーの内容を維持しながら、5 文の構成への適合性を高めるよう各文を書き換えます。
- 内部監査: 再構成後、5 つすべての構成位置が埋まっていることを確認します。
- 不足している位置には
[MISSING: position-name]を付けます。内容を黙って削除してはいけません。
Step 3: 出力
-
まずラベル付きのバージョンを提示します(構成位置を明示します。出力仕様を参照)。
-
---で区切って、ラベルなしのクリーンなバージョン(通常の段落)を提示します。 -
ユーザーが保存を希望する場合は、Write ツールを使ってファイルに書き込むことを提案します。
-
語数制限が指定されている場合は、語数を報告し、制限を超えていれば警告します。
-
バイリンガル表示:
bilingual_modeが true の場合、ラベル付きバージョンの提示後とクリーンなバージョンの提示後にそれぞれ、アブストラクトの各文について> **[Chinese]** ...の引用ブロックを追加します。引用ブロックの前に、見出し「双语对照 / Bilingual Comparison:」を付けます。形式:[Chinese] [1: 贡献] ... [Chinese] [2: 难度] ... [Chinese] [3: 方法] ... [Chinese] [4: 证据] ... [Chinese] [5: 关键结果] ...
各引用ブロックは、Farquhar の公式の 1 文に対応します。ラベルの接頭辞は読みやすさのためだけのもので、クリーンなバージョンの中国語は、ラベルなしの段落構成に従います。
-
bilingual_modeが false(オプトアウトが検出された場合)の場合:バイリンガル表示を完全に省略します。 -
必要に応じて、表現をさらに磨くために Polish Skill を提案できます。
出力仕様
| 出力 | 形式 | 条件 |
|---|---|---|
labeled_abstract | [N: Position] マーカー付きの5文ブロック | 常に |
clean_abstract | ラベルなしの段落。--- で区切る | 常に |
| 語数 | 整数 | ユーザーが語数制限を指定した場合 |
bilingual_abstract | セッション内で > **[Chinese]** ... 形式の引用ブロック(1文につき1つ) | bilingual_mode が true の場合(デフォルト)。オプトアウトが検出された場合は省略 |
ラベル付きの正確な形式:
[1: Contribution] We propose...
[2: Difficulty] Despite growing interest in X, existing approaches fail to...
[3: Method] We address this by...
[4: Evidence] Evaluated on N datasets...
[5: Key Result] Our approach achieves...
---
Clean version:
We propose... Despite growing interest in X, existing approaches fail to... We address this by... Evaluated on N datasets... Our approach achieves...
エッジケース
| 状況 | 対応 |
|---|---|
| 入力が曖昧(未加工の内容なのか、既存のアブストラクトなのか明確でない) | 作業を進める前に確認します:「構成し直す既存のアブストラクトはありますか。それともこちらで作成しますか?」 |
| 既存のアブストラクトが5文未満 | 再構成の手順を実行し、不足している位置に [MISSING: ...] のフラグを付けます |
| ユーザーが語数制限を指定 | 出力の語数を数えます。制限を超えた場合は、正確な語数とともに警告します |
| ジャーナルが指定されているが、テンプレートがない | 拒否します:「[X] のジャーナルテンプレートが見つかりません。利用可能なテンプレート:CEUS。」 |
| 数式の位置を利用可能な内容から埋められない | [MISSING: difficulty statement] のフラグを付けます。内容を創作してはいけません |
| ユーザーがタイトルまたは1文の要約のみを提供 | 作業を進める前に、追加の内容を求めます |
フォールバック
| 状況 | フォールバック |
|---|---|
| 構造化インタラクションを利用できない | 通常のテキストで1~2個の質問をします(パスとジャーナル) |
| 表現パターンのリーフがない | 一般的なアカデミックな文体で進め、ユーザーに警告します |
| ジャーナルテンプレートがない(ジャーナルの指定なし) | 一度確認します。断られた場合は一般的なアカデミックな文体を使います |
| 書き込みツールが失敗 | 代わりに会話内に出力を提示します |
例
呼び出し:「アブストラクトを5文の公式に沿うように再構成してください。」
ユーザーが貼り付ける内容:「本稿では、GPSデータを用いて都市の移動パターンを調査します。移動は高い予測可能性を持つことが分かりました。MobNet というモデルを提案します。次の位置の予測タスクで、既存の手法を12%上回ります。」
出力:
[1: Contribution] We propose MobNet, a model for predicting urban mobility using GPS data.
[2: Difficulty] Despite the prevalence of GPS data, existing mobility models fail to capture [MISSING: difficulty statement — why prediction is hard or why existing approaches fall short].
[3: Method] MobNet addresses this by [MISSING: method description — how MobNet works].
[4: Evidence] Evaluated on a next-location prediction task using GPS traces from urban environments.
[5: Key Result] MobNet outperforms existing approaches by 12% on next-location prediction.
---
Clean version:
We propose MobNet, a model for predicting urban mobility using GPS data. [MISSING: difficulty statement]. MobNet addresses this by [MISSING: method description]. Evaluated on a next-location prediction task using GPS traces from urban environments. MobNet outperforms existing approaches by 12% on next-location prediction.
公式の2つの位置に不足があるというフラグが付いています。次の内容を提供してください:(1)移動予測が難しい理由、または既存の手法でできないこと、(2)MobNet の仕組みの簡単な説明。
スキル:abstract-skill 規約:references/skill-conventions.md