subsection-writer について
subsection-writerは、根拠の範囲を定めた執筆パックを使い、サーベイの各節を作成・修正するスキルです。既存のパイプライン契約を保ち、執筆指針を補助スクリプトから分離します。
主な機能
- 01節の本文作成と修正
- 02執筆パックと引用の利用
- 03節ファイルとマニフェストの更新
- 04執筆前の承認確認
活用シーン
- 01承認済みの根拠からサーベイの節を作成
- 02根拠が薄い場合に文章の水増しを回避
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ willoscar/ research-units-pipeline-skills --skill subsection-writerインストール後、Claude Code で/subsection-writerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/bootstrap_paragraph_templates.jsonparagraph_job_templates.jsonsubsection_writer_context.schema.jsonreferences/bootstrap_assembly.mdcontrast_moves.mdeval_anchor_patterns.mdexamples_bad.mdexamples_good.mdlimitation_moves.mdopener_catalog.mdoverview.mdparagraph_job_archetypes.mdparagraph_jobs.mdscripts/run.py詳細
サブセクションライター(互換性ルーター)
トリガーとルーティング
- トリガー:サブセクションライター、セクション単位の執筆、セクション分割、sections/、分小节写、按章节拆分写作。
- 使用する場面:
Approve C2が記録され、ライターパック(outline/writer_context_packs.jsonl)が存在する場合に、一括で一度に草稿を作成するのではなく、根拠の範囲内で文章を作成したいとき。
目的:現在のパイプライン契約を変更せずに、sections/ 配下のセクションごとのサーベイ文章を作成、または推敲します。
互換モード:
- 出力パスはそのままです
scripts/run.pyは引き続き承認チェック、不足ファイルのブートストラップ、sections/sections_manifest.jsonlの処理を担当します- 執筆ガイダンスは、主にスクリプト内に記述するのではなく、
references/に置かれるようになりました
読み込み順
必ず読みます:
references/overview.mdreferences/paragraph_jobs.md- 段落の役割に関する動作を調整するとき、またはライターポリシーを Python から切り離してリファクタリングするときは、
references/paragraph_job_archetypes.md - 互換モードのブートストラップ動作について検討するときは、
references/bootstrap_assembly.md
必要に応じて読みます:
- 1段落目がありきたり、または説明調に聞こえるときは、
references/opener_catalog.md - A 対 B の比較段落を作成するときは、
references/contrast_moves.md - パフォーマンス/堅牢性/ベンチマークに関する主張をするときは、
references/eval_anchor_patterns.md - 注意点や限定的な結論を加えるときは、
references/limitation_moves.md - 調整の参考としてのみ、
references/examples_good.mdとreferences/examples_bad.md
機械可読な契約:
assets/subsection_writer_context.schema.jsonassets/bootstrap_paragraph_templates.jsonassets/paragraph_job_templates.json
入力
必須:
DECISIONS.md(Approve C2を含む必要があります)outline/outline.ymloutline/writer_context_packs.jsonl(推奨)citations/ref.bib
任意ですが役立つもの:
outline/subsection_briefs.jsonloutline/evidence_drafts.jsonloutline/evidence_bindings.jsonloutline/anchor_sheet.jsonloutline/chapter_briefs.jsonl
出力
現在の契約を維持します:
- H3 本文用の
sections/S<sub_id>.md - これまでに3つのライター Skills が生成したすべてのセクションファイルを対象に更新する
sections/sections_manifest.jsonl - モデルまたは人間が生成された H3 本文をレビューし、必須の承認を得るために U100 を提出するときの
sections/h3_bodies.refined.ok
front-matter-writer は Abstract、Introduction、Related Work、Discussion、Conclusion を担当します。chapter-lead-writer は H2 のリードブロックを担当します。この Skill は共有マニフェストの更新時にそれらのファイルを読み込みますが、執筆者とはみなしません。
ライターポリシー
有効なルールは、段落数の割り当てではなく、論点の展開を網羅することです。 サブセクションでは、パックが裏付ける必要な論点の展開を扱います。根拠が正当化しない場合は、固定数に合わせて内容を水増ししないでください。
書き出し/結びのポリシー:
- パックに含まれる実際の緊張、対比、プロトコル、または制約のシグナルから、書き出し候補を2~4個作成します。どこでも同じ定型の書き出しを再利用せず、最も内容のある候補を残します
- サブセクションの結びは、根拠を伴う比較や制約の内容から導きます。段落を完結させるためだけに、固定の「最も無難な統合/判断基準」で締めくくらないでください
- 内部の軸ラベルは、読者に自然な文章表現に整えます。スラッシュ形式のブリーフ用ラベルは計画用メタデータのままにし、論文にそのまま持ち込まないでください
スクリプトの境界
scripts/run.py はヘルパーとしてのみ使用します。
- 不足している H3 ファイルをブートストラップし、マニフェストを更新できます
- ブートストラップの文章は、ライターパックとバージョン管理されたテンプレートアセットから決定論的に組み立てられます。これは検査可能なフォールバック素材であり、モデルが作成した文章や最終的な文章品質を主張するものではありません
- 文章の構成や文体の方針を定める正式な情報源として扱ってはいけません
- ブートストラップの文章を自己認証してはいけません。このスクリプトが
sections/h3_bodies.refined.okを作成することはありません - マーカーは U100 の提出証明に限られます。下流の
writer-selfloopより前に作成されるため、セルフループがすでに合格したことを意味するものではありません - 必須の受け入れ判定では、H3 の文と Run で選択されたライターテンプレートアセットを個別に照合し、Pipeline の上限を超える文字どおりの残存表現を拒否します
writer-selfloopは共有の厳格なセクションチェッカーを呼び出し、レポートが PASS になる前に H3 の測定値を再計算します- 必須の
pipeline-auditorは統合済みドラフト全体を測定し、スコアカードを作成します。Harness はその判定と各項目を評価台帳に反映します - 現在の 10% の上限は初期の方針目標です。公開済みの現行契約リプレイでは、保持された Artifact セットの 1 つについて残存表現 0/226 が測定されていますが、クリーンな状態からの再現とトピックをまたいだ再現性は未解決です
- マーカーがライター入力またはライタースクリプトより古い場合は古いものです。次回の実行時に、ブートストラップの文章を再生成する前に削除されます
クイックスタート
uv run python .codex/skills/subsection-writer/scripts/run.py --workspace <workspace>
トラブルシューティング
- パックの情報が不足している場合は、文章を水増しせず、停止して上流に差し戻してください。
- 小節が語り口調になっている場合は、
references/opener_catalog.mdとreferences/examples_bad.mdを再読み込みしてください。 - 主張にプロトコルの文脈が欠けている場合は、書き直す前に
references/eval_anchor_patterns.mdを再読み込みしてください。
実行時の注意事項
互換モードで実行する場合、scripts/run.py は現在、次のファイルを使用します。
Approve C2のためのDECISIONS.md- 章/小節ファイルを列挙する
outline/outline.yml - 主要なドラフト入力としての
outline/writer_context_packs.jsonl - 対象範囲内の引用のための
citations/ref.bib - 任意の補足情報源としての
outline/subsection_briefs.jsonl、outline/evidence_drafts.jsonl、outline/evidence_bindings.jsonl、outline/anchor_sheet.jsonl、およびoutline/chapter_briefs.jsonl
スクリプト
クイックスタート
uv run python .codex/skills/subsection-writer/scripts/run.py --workspace <workspace>
すべてのオプション
--workspace <dir>--unit-id <id>--inputs <a;b;...>--outputs <a;b;...>--checkpoint <C*>
例
uv run python .codex/skills/subsection-writer/scripts/run.py --workspace <workspace>
トラブルシューティング
DECISIONS.mdにApprove C2がない場合は、停止して、まず承認を修正してください。outline/writer_context_packs.jsonlの情報が不足している場合は、文章を水増しせず、上流に差し戻してください。- 引用の対象範囲が誤っているように見える場合は、出力テキストを編集する前に
citations/ref.bibとライターパックを再確認してください。
コメント
Markdown 対応