mcpField
M
make-latex-model

make-latex-model

github.com/huangwb8ドキュメント3.0k61 回インストール2 週間前に更新
リポジトリ

make-latex-model について

ChineseResearchLaTeX のテンプレートを実装・調整するスキルです。NSFC、論文、学位論文、CV のテンプレート保守担当者向けに、プロジェクト層と共有パッケージ層を区別し、公式ビルド入口やベースライン比較で検証します。

主な機能

  1. 01プロジェクト層と共有パッケージ層の判別
  2. 02レイアウト、見出し、入口設定の調整
  3. 03PDF のピクセル比較と見出しの照合
  4. 04共有パッケージ変更の回帰テスト計画
  5. 05製品ライン公式ツールによるビルド検証

活用シーン

  1. 01既存 PDF や Word 出力に合わせたテンプレート調整
  2. 02レイアウト問題がプロジェクト層かスタイル層かの判定
  3. 03NSFC、論文、学位論文、CV テンプレートの追加・再構成

インストール

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

$npx skills add https://github.com/huangwb8/chineseresearchlatex --skill make-latex-model

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

同梱ファイル

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

CHANGELOG.md
config.yaml
README.md
docs/
BASELINE_GUIDE.md
FAQ.md
WORKFLOW.md
output/
README.md
prompts/
analysis_template.txt
references/
PRODUCT_LINE_RULES.md
SCRIPT_SCOPE.md
scripts/
__init__.py
analyze_pdf.py
benchmark.bat
benchmark.sh
check_state.py
compare_headings.py
compare_paragraph_images.py
compare_pdf_pixels.py
convergence_detector.py
scripts/core/
__init__.py
ai_optimizer.py
config_loader.py
decision_reasoner.py
diff_analyzer.py
font_detector.py
history_memory.py
latex_format_parser.py
paragraph_alignment.py
parameter_executor.py
template_base.py

詳細

ChineseResearchLaTeX テンプレート実装と高忠実度アライナー

  • ChineseResearchLaTeX の対象プロジェクトを、現在の実際のアーキテクチャに沿った高品質なテンプレートとして実装します。
  • projects/* と packages/bensz-* のどちらを変更すべきか、まず判断します。
  • 共通パッケージの変更が必要な場合は、先に回帰テスト計画を立て、影響を受けるテンプレートの公式検証を実行します。
  • 受け入れ基準は常に、各製品ラインの公式ビルド入口に基づきます。
対象タスク
  • プロジェクトを公式 PDF、Word からエクスポートした PDF、または既存のベースラインに合わせる
  • 問題がプロジェクト層の差異か、共有スタイル/共有スクリプトに起因するかを判断する
  • ピクセル単位の PDF 比較、見出しの位置合わせ、パラメーター抽出を行う
  • NSFC/paper/thesis/cv テンプレートを新規作成またはリファクタリングする

ワークフロー

入力

ユーザーの依頼と設定ファイルに基づいて必要な入力を提供します。不足している情報は明示して列挙し、その入力に依存する手順を停止します。

実行手順
  • ユーザー環境で、この Skill の設計上の欠陥が原因のバグが発生した場合は、まず bensz-collect-bugs を使用して、規定に従い ~/.bensz-skills/bugs/ に記録します。ユーザーのローカル環境にインストール済みの Claude Code/Codex の Skill ソースコードを直接変更することは厳禁です。

  • AI がワークアラウンドによってユーザーのタスクを引き続き完了できる場合は、先にバグを記録してから、現在のタスクを続行します。

  • ユーザーが「report bensz skills bugs」などの公開報告を明確に要求した場合は、ローカルの gh と bensz-collect-bugs を呼び出し、新規バグのみを huangwb8/bensz-bugs にアップロードします。バグリポジトリ全体を pull/clone しないでください。

  • 製品ライン標準:docs/for-developers/*-template-standard.md

  • 本 Skill のワークフロー:docs/WORKFLOW.md

  • 製品ラインの識別:references/PRODUCT_LINE_RULES.md

  • スクリプトの役割:references/SCRIPT_SCOPE.md

  • ツールの説明:scripts/README.md

  • ベースラインの準備:docs/BASELINE_GUIDE.md

受け入れ基準の判断
  • ユーザーの要望が「特定の PDF/Word に似せる」ことなのか
  • 「現在のリポジトリ標準に沿った優れたテンプレートにする」ことなのか
  • それとも「新しいテンプレート機能を追加する」ことなのかを判断します。
変更レイヤーの判断
  • projects/*:サンプルコンテンツ、薄いラッパー、プロジェクトリソース、局所的な差異
  • packages/bensz-*:共有スタイル、共有フォント、プロファイル、統一されたビルドロジック
最小範囲での実装
  • 現在のタスクに直接関係するファイルのみを変更します。
  • ユーザーから明示的な依頼がない限り、本文の意味内容は変更しないことを既定とします。
パッケージ層の安全ゲート

packages/ の変更が必須の場合は、追加で次の手順を実行します。

  1. プロジェクト層での対応では不十分であることを示します。
  2. python3 skills/make-latex-model/scripts/plan_package_regression.py <packages/bensz-*> を実行します。
  3. 変更を可能な限り狭い範囲のテンプレート専用 profile/style/template に絞ります。
  4. 変更後、まず対象プロジェクトを検証し、その後、当該共通パッケージが直接カバーする既存プロジェクトすべてを回帰テストします。
公式入口による検証
  • NSFC:nsfc_project_tool.py

  • Paper:paper_project_tool.py

  • Thesis:thesis_project_tool.py

  • CV:cv_project_tool.py

  • analyze_pdf.py

  • compare_headings.py

  • compare_pdf_pixels.py

  • optimize_heading_linebreaks.py

  • plan_package_regression.py

これらのスクリプトは補助ツール群であり、唯一のワークフローではありません。NSFC 専用ツールを、paper/thesis/cv の公式入口の代わりとして既定で使用してはいけません。

出力

Skill description で約束されている成果物を出力し、形式、パス、失敗時の返却形式を明確にします。

出力管理

本 Skill の新規タスクの中間ファイルは、すべて ./.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/{skill名}/input|output|log/ に書き込みます。同じタスクではタスクルートディレクトリを再利用します。複数の Skill が連携する場合にのみ shared/ を作成します。正式な成果物はこのディレクトリに保存しません。過去の隠しディレクトリは、明示的に互換読み込み、移行、またはクリーンアップを行う場合にのみ使用できます。

検証
  1. 変更が適切なレイヤーに反映されていること
  2. 対応する製品ラインの公式入口を通過すること
  3. 警告について、既存のものか新規のものかを説明すること
  4. 共通パッケージを変更した場合は、どのテンプレートを回帰テストしたかを説明すること
  5. ユーザーがベースラインを提供した場合は、必要な比較を完了すること
  6. paper は PDF と DOCX の両方を、cv は中国語と英語の両方を、thesis はプロファイル/スタイルとプロジェクト入口の整合性を既定で確認すること
失敗と復旧

エラーの証拠と完了済みの成果物を保持します。入力、環境、または外部依存関係が復旧した後にのみ、直近の失敗手順から再試行します。

制約

許可される操作:

  • プロジェクト層のレイアウトパラメーター、見出し体系、入口の組み立てを調整する
  • 共有実装を packages/bensz-* に集約する
  • プロファイル、スタイル、ラッパー、公式の比較・受け入れフローを変更する

避けるべき操作:

  • 共有実装を単一プロジェクトに複製する
  • 公式ビルド入口を迂回し、裸の xelatex だけを実行する
  • ピクセル単位の位置合わせのために、リポジトリの実際のレイヤー構成を損なう
  • ユーザー本文の意味内容を既定で書き換える
共通の必須制約
  • タスクのファイル保存が必要な場合は、一意の ./.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/ ルートディレクトリを使用します。共有資料は shared/ に、Skill 固有の資料はその Skill の input/、output/、log/ に配置します。
  • 正式な成果物、ソースコード、正式な計画はプロジェクトの規約に従って保存し、タスク作業領域には保存しません。許可なく上書き、削除、移行、またはリモートへの書き込みを行いません。
  • プロジェクトの保守変更では BAC の利用可否を確認し、要件、AI の出力、ツールの結果、ファイルの変更、検証の概要を記録します。BAC はプロセス監査のみを行い、署名、責任、コンプライアンスに関する判断に代わるものではありません。
  • API Key、アクセストークン、パスワード、Cookie、環境/認証情報ファイル、非公開プロンプト、身元情報、ローカルユーザー名、ホスト名、または不要な大容量の生データは記録しません。
  • ファイルパスを正規化し、許可されたプロジェクトの範囲内に制限します。外部 URL、サブプロセス、ネットワークアクセスには最小権限を適用し、パストラバーサル、SSRF、コマンドインジェクションを防止します。
  • Skill のバージョンは、その Skill 自身の config.yaml:skill_info.version にのみ記録します。公開 API、プロトコル、ディレクトリ、または設定の変更は、ドキュメントと CHANGELOG.md にも反映します。
  • bensz-collect-bugs に報告するのは、Skill または Bensz インフラ自体の設計上の欠陥に限ります。まず機密情報を除去して ~/.bensz-skills/bugs/ に記録し、現在のタスクを中断しないでください。公開報告はユーザーが明示的に要求した場合に限り、ユーザーがインストール済みの Skill ソースコードを直接変更することは禁止されています。
Skill 固有の制約

本 Skill description と上記のワークフローで定められた範囲を超えてはなりません。未検証の情報を確定した結論として提示してはいけません。

コメント