nsfc-schematic について
nsfc-schematicは、機構の連鎖、アルゴリズム構成、モジュール関係、実験サイクルを編集・埋め込み可能な図にする研究表現スキルです。通常はdrawioで描画し、構成・見た目・可読性を複数回評価します。
主な機能
- 01仕様・申請書・説明から図を計画
- 02drawio、PDF、SVG、PNGを生成
- 03XMLを検証し複数回評価
- 04構成・見た目・可読性を確認
- 05明示的な指定時にPNGのみの画像を生成
活用シーン
- 01研究の機構連鎖やアルゴリズム構成を図示
- 02モジュール関係や実験サイクルを可視化
- 03図のレイアウトと接続線を反復確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ huangwb8/ chineseresearchlatex --skill nsfc-schematicインストール後、Claude Code で/nsfc-schematicを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
CHANGELOG.mdconfig.yamlREADME.mdassets/color_schemes.yamlreferences/design_principles.mdplan_template.mdreferences/models/templates.yamlreferences/spec_examples/ai_critic_min.yamlccs_framework.yamlseqccs_min.yamltransformer.yamlscripts/ai_evaluate.pyai_extract_tex.pycolor_math.pyenv_utils.pyevaluate_dimension.pyevaluate_schematic.pyextract_from_tex.pygenerate_schematic.pygeometry.pymeasure_dimension.pymeasure_schematic.pymodel_gallery.pynano_banana_check.pynano_banana_client.pynano_banana_generate_png.pyplan_schematic.pypng_compactor.pyrender_schematic.pyrouting.py詳細
NSFC 概念図ジェネレーター
bensz-collect-bugs との協業ルール
- ユーザー環境で、このスキルの設計上の欠陥に起因するバグが発生した場合は、まず
bensz-collect-bugsを使用して、規定に従い~/.bensz-skills/bugs/に記録します。ユーザーのローカル環境にインストール済みの Claude Code / Codex のスキルソースコードを直接変更することは厳禁です。 - AI が回避策によってユーザーのタスクを引き続き完了できる場合は、まずバグを記録してから、現在のタスクを続行します。
- ユーザーから「report bensz skills bugs」など、公開報告の操作を明示的に求められた場合は、ローカルの
ghとbensz-collect-bugsを呼び出し、新規バグのみをhuangwb8/bensz-bugsにアップロードします。バグリポジトリ全体の pull / clone はしないでください。
目的
- 仕組みの連鎖、アルゴリズムのアーキテクチャ、モジュール間の関係、実験のフィードバックループを、編集・埋め込み可能な科学研究用の図にします。
- デフォルトでは
drawioを使用してdrawio/pdf/svg/pngを生成します。Nano Banana 画像モデルへの切り替えは、ユーザーから明示的に求められた場合に限り、PNG のみを出力します。 - 科学研究の執筆と表現の改善にのみ使用し、審査の基準を示すものではありません。
入力
以下のうち、少なくとも 1 つを指定します。
spec_file:構造化された図の仕様ファイル。優先して使用します。proposal_file:単一の申請書ファイル。proposal_path:申請書のディレクトリ。
任意:
roundsrendereroutput_dirconfigstyle_ref_imagescontext:計画モードで草案を生成するための、自然言語によるメカニズムの説明template_ref
出力
デフォルトの納品物:
schematic.drawioschematic.pdfschematic.svgschematic.png
非表示の中間生成物は output_dir/.nsfc-schematic/ に出力されます。
optimization_report.mdspec_latest.yamlconfig_used_best.yamlevaluation_best.jsonruns/run_*/round_*ai/:stop_strategy=ai_criticの作業領域legacy/:過去の残存ファイルの保管領域
Nano Banana モードの納品物のみ:
schematic.pngschematic_compacted.png
厳守事項
- 開始前に必ず
config.yamlを読み込み、renderer、layout、color_scheme、evaluation、planning、outputを唯一の情報源とします。 - デフォルトでは、ユーザーが明示的に指定したファイルまたはディレクトリのみを処理し、素材をインターネットから取得しません。
- デフォルトでは
drawioのワークフローを維持します。ユーザーから明示的に指定されていない限り、画像モデルに切り替えないでください。 - 図の混雑を解消する際は、まず
specを変更します。文字サイズの縮小を優先しないでください。文字サイズを縮小するのは、オーバーフローのリスクがある場合に限ります。 - 配色の問題は、まず
kindの割り当てや構造を変更して対処し、構造上の誤りを白黒の配色で覆い隠さないでください。
主な手順
1. 計画
- 初回の使用時は、「計画 → レビュー → 生成」の順で進めることを推奨します。
- デフォルトの
planning_mode=ai:plan_schematic.pyで計画リクエストを生成します- ホスト AI が
schematic-plan.mdとspec_draft.yamlを作成します - スクリプトを再実行して、妥当性を検証します
- ユーザーが自然言語の説明のみを指定した場合も、
--contextで計画を開始できます。
2. 生成
python3 nsfc-schematic/scripts/generate_schematic.py \
--spec-file ./schematic_plan/spec_draft.yaml \
--output-dir ./schematic_output \
--rounds 5
- 処理には、spec の解析、draw.io XML の生成、XML の事前検査、レンダリング、主評価、多次元セルフチェック、最良の round のエクスポートが含まれます。
edgesが明示的に指定されている場合、レンダラーはその指定を優先して再現します。指定されていない場合は、layout.auto_edgesに従って自動的に接続します。
3. 評価と最適化
- デフォルトでは最大 5 ラウンド実行します。しきい値と停止戦略は
config.yaml:evaluationのみを参照します。 - 各ラウンドで、少なくとも以下を出力します。
evaluation.jsonlayout_debug.jsonedge_debug.jsonmeasurements.jsondimension_measurements.jsoncritique_structure.jsoncritique_visual.jsoncritique_readability.json
4. 任意:AI による自律的なフィードバックループ
- ホスト AI に証拠パッケージを基に次のラウンドを決定させる場合は、
evaluation.stop_strategy: ai_criticを有効にします。 - プロトコルファイルは
.nsfc-schematic/ai/にあります。主なファイルは以下のとおりです。ai_critic_request.mdai_critic_response.yamlai_pack_round_XX/
5. 任意:Nano Banana による PNG のみの出力(Gemini / OpenAI gpt-image-2)
- ユーザーから明示的に求められた場合に限り有効にします。
- まず接続を確認します。
python3 nsfc-schematic/scripts/nano_banana_check.py
-
.envでIMAGE_PROVIDER=openaiを指定すると、OpenAI に切り替えられます。明示的に指定されていない場合は、既存のGEMINI_*設定を優先して使用します。 -
次に、PNG のみを生成します。
python3 nsfc-schematic/scripts/generate_schematic.py \
--renderer nano_banana \
--spec-file ./schematic_plan/spec_draft.yaml \
--output-dir ./schematic_output \
--rounds 5
よく使うコマンド
# 规划
python3 nsfc-schematic/scripts/plan_schematic.py --proposal /path/to/proposal --output ./schematic_plan
# 生成
python3 nsfc-schematic/scripts/generate_schematic.py --spec-file ./schematic_plan/spec_draft.yaml --output-dir ./schematic_output --rounds 5
# 连通性检查
python3 nsfc-schematic/scripts/nano_banana_check.py
参考資料
config.yamlreferences/plan_template.mdreferences/design_principles.mdreferences/models/templates.yamlreferences/spec_examples/
コメント
Markdown 対応