mcpField
B
backward-traceability

backward-traceability

github.com/lingzhi227ドキュメント4402.2k 回インストール35 週間前に更新
リポジトリ

backward-traceability について

backward-traceabilityは、論文の最終PDFに記載された数値を、その値を生成したコード行に結び付けるスキルです。出力へのタグ付け、LaTeXリンクの追加、数値参照の検査を行います。

主な機能

  1. 01コード出力の数値にタグ付け
  2. 02論文の数値をコードへリンク
  3. 03\numによる派生値の計算
  4. 04付録用コード一覧の作成
  5. 05追跡関係と不一致の検査

活用シーン

  1. 01論文の結果を実験コードまで追跡
  2. 02論文中の数値にクリック可能なリンクを追加
  3. 03公開前に数値参照を監査

インストール

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

$npx skills add https://github.com/lingzhi227/agent-research-skills --skill backward-traceability

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

同梱ファイルreferences/traceability-patterns.mdscripts/ref_numeric_values.py

詳細

逆方向のトレーサビリティ

最終 PDF 内のすべての数値から、その数値を生成した正確なコード行に戻れるハイパーリンクを設定します。

入力

  • $0 — コードと LaTeX ファイルを含む論文プロジェクトのディレクトリ

参照資料

  • トレーサビリティのパターンと LaTeX コマンド:~/.claude/skills/backward-traceability/references/traceability-patterns.md

スクリプト

hypertarget/hyperlink の参照をスキャン
python ~/.claude/skills/backward-traceability/scripts/ref_numeric_values.py \
  --scan paper/main.tex --output report.json

レポート内容:すべての hypertarget、ハイパーリンク、参照先のない項目、参照されていない数値。

相互参照の整合性を検証
python ~/.claude/skills/backward-traceability/scripts/ref_numeric_values.py \
  --verify paper/main.tex --code-output results.txt

論文本文とコード出力の値を照合します。不一致があれば報告します。

ワークフロー

ステップ 1:コード出力にタグを付ける

実験コードで生成される数値ごとに、hypertarget タグを追加します。

# In experiment code output:
print(f"\\hypertarget{{R1a}}{{45.3}}")  # Mean accuracy
print(f"\\hypertarget{{R1b}}{{2.1}}")   # Std deviation

ラベルの形式:{prefix}{line_number}{letter}。同じ行に複数の値がある場合、letter には a、b、c... を指定します。

ステップ 2:論文本文から参照する

論文内にクリック可能な参照を作成するには、\hyperlink を使用します。

Our method achieves \hyperlink{R1a}{45.3}\% accuracy
($\pm$\hyperlink{R1b}{2.1}).
ステップ 3:計算値には \num を使用する

他の値から導出される値には、コンパイル時に評価される \num{} を使用します。

% \num{formula, "explanation"} → evaluated at compile time
The improvement is \num{45.3 - 38.7, "accuracy gain"}\%.
ステップ 4:コードリストの付録を生成する

関連する行に \hypertarget アンカーを配置し、コード全体を含む付録を作成します。

\section*{Appendix: Code Listing}
\begin{lstlisting}[escapechar=@]
@\hypertarget{code1}{}@result = model.evaluate(test_data)
@\hypertarget{code2}{}@accuracy = result['accuracy']
\end{lstlisting}
ステップ 5:トレーサビリティを検証する
  • 論文本文のすべての数値に、コード内の対応する \hypertarget があること
  • すべての \num{} 数式が正しく評価されること
  • クリックテスト:PDF 内のすべてのハイパーリンクが、正しいコード行に移動すること

LaTeX の設定

必須パッケージ:

\usepackage{hyperref}
\usepackage{listings}

ルール

  • 論文内のすべての数値結果は、コード出力までたどれるようにすること
  • 数値を手入力しないでください。必ずタグ付けされた出力を参照してください
  • 導出値や計算値には \num{} を使用してください
  • 付録のコードリストは、実際に実行したコードと一致させてください
  • コンパイル後、すべてのハイパーリンクが正しく機能することを確認してください

関連スキル

コメント