Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/horizonrobotics/oe-skills/j6-plugin-graph-diffnpx skills add HorizonRobotics/OE-Skills --skill j6-plugin-graph-diffgit clone --depth 1 https://github.com/HorizonRobotics/OE-SkillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/horizonrobotics/oe-skills/j6-plugin-graph-diff)<a href="https://agentmods.dev/skills/horizonrobotics/oe-skills/j6-plugin-graph-diff"><img src="https://agentmods.dev/badge/skills/horizonrobotics/oe-skills/j6-plugin-graph-diff.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00050 | $0.04260 |
| Opus 5 | $0.00025 | $0.02130 |
| Sonnet 5 | $0.00010 | $0.00852 |
| Haiku 4.5 | $0.00005 | $0.00426 |
Grade A, and why
j6-plugin-graph-diff scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 441 lines — stays where its author put it; the contents beside it link to each section on GitHub.
FX Graph 计算图对比与源码定位工具
强约束(必须遵守)
1) 必须调用外挂脚本,禁止 Agent 自行实现差异对比
本 Skill 的计算图差异对比必须通过调用外挂脚本 j6_plugin_graph_diff.py 完成,严禁 Agent 自己编写 Python 代码实现 diff 逻辑。
- ✅ 必须:通过 Bash 工具执行
python j6-plugin-graph-diff/j6_plugin_graph_diff.py --file1 ... --file2 ... - ❌ 禁止:Agent 自行编写 difflib/正则匹配等代码来解析计算图
- ❌ 禁止:用 Bash 的 diff 命令替代外挂脚本
- ❌ 禁止:用 Read 工具读取两个文件后自行比较
原因:外挂脚本包含完整的 FX Graph 解析逻辑(节点解析、差异分类、相似度计算等),Agent 自行实现容易遗漏格式兼容性、分类精度等问题。
2) 外挂脚本调用前必须确认文件存在
在调用脚本前,Agent 必须确认两个输入文件路径存在且可读,避免脚本执行失败。
3) 脚本路径
外挂脚本位于:j6-plugin-graph-diff/j6_plugin_graph_diff.py
调用时使用相对路径:
python j6-plugin-graph-diff/j6_plugin_graph_diff.py --file1 <path1> --file2 <path2> -o <output_path>
目标
对比两份 FX Graph 计算图文件(例如评测与导出、训练与推理、不同版本之间的计算图),实现:
- 精确识别计算图差异:找出第一个不一致点、所有差异块(由外挂脚本完成)
- 差异分类统计:按差异类型(算子变化、参数变化、结构变化)进行分类
- 源码反向定位:根据 diff 报告,由 Agent 分析并将差异映射回原始模型代码位置
职责分工
本 Skill 采用外挂脚本 + Agent 分析的分工模式:
| 组件 | 职责 | 输入 | 输出 |
|---|---|---|---|
外挂脚本 j6_plugin_graph_diff.py |
计算图差异对比 | 两个 FX Graph 文件 | diff 报告(文本格式) |
| Agent Skill | 源码定位与分析 | diff 报告 + 模型源码 | 源码位置、修复建议 |
重要:Agent 不得自行实现外挂脚本的职责。差异对比必须调用外挂脚本,Agent 只负责解读脚本输出并进行源码定位。
外挂脚本职责(j6_plugin_graph_diff.py)
外挂脚本只负责计算图层面的差异对比,不涉及源码分析:
- ✅ 解析两个 FX Graph 文件
- ✅ 找出第一个差异点
- ✅ 找出所有差异块
- ✅ 对差异进行分类(operator_change / parameter_change / structure_change)
- ✅ 计算相似度
- ✅ 生成结构化 diff 报告
- ❌ 不负责源码反向定位
Agent Skill 职责
Agent 负责根据 diff 报告进行源码定位和问题分析:
- ✅ 调用外挂脚本生成 diff 报告
- ✅ 分析 diff 报告,理解差异内容
- ✅ 根据差异节点信息,在模型源码中搜索对应位置
- ✅ 提供源码上下文和修复建议
- ✅ 判断差异是否预期(结合用户提供的场景说明)
适用范围
本 Skill 适用于以下场景:
- 评测与导出对比:对比模型评测和导出阶段的计算图差异
- 训练与推理对比:对比训练模式和推理模式的计算图差异
- 版本对比:对比不同版本模型的结构变化
- 调试定位:快速定位计算图异常点,并映射回源码
核心能力
1. 计算图差异识别(外挂脚本)
- ✅ 识别算子类型变化(如
torch.relu→torch.leaky_relu) - ✅ 识别算子参数变化(如
args=(x, 1)→args=(x, 0.5)) - ✅ 识别结构变化(如新增/删除节点、改变连接关系)
2. 源码反向定位(Agent Skill)
- ✅ 解析 diff 报告,提取关键差异节点
- ✅ 在模型源码中搜索对应的操作(如模块名、函数名)
- ✅ 匹配 forward 函数中的调用位置
- ✅ 提供代码上下文(前后 N 行)便于理解
- ✅ 判断差异是否符合预期场景
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 441 lines · 50 tokens per session scan A cccef061e39d
j6-plugin-graph-diff is a skill published in the GitHub repository HorizonRobotics/OE-Skills (19 stars, last pushed 2mo ago), licensed Apache-2.0. It adds 50 tokens to every session and 4,260 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
spark-optimization
Optimize Apache Spark jobs with partitioning, caching, shuffle optimization, and memory tuning. Use when improving Spark performance, debugging slow jobs, or scaling data processing pipelines.
notebooklm
Install, authenticate, troubleshoot, and operate Gemini Notebook through the notebooklm-py CLI or typed async Python API. Use for notebook and source management, grounded chat and research, and artifact generation or download when the user mentions Gemini Notebook, notebooklm-py, the notebooklm CLI, or its Python API.…
debug-inference
Debug why inference.local, direct external inference, or supervisor-only system inference is failing. Use when the user cannot reach a local model server, has provider base URL issues, sees inference verification failures, hits protocol mismatches, or needs to diagnose inference on local vs remote gateways. Trigger…
oh-my-posh
Install, configure, or troubleshoot Oh My Posh/ohmyposh: shell init, themes, segments, Nerd Font icons, and prompt setup on PowerShell, zsh, bash, or fish.
eagle3-triage
Triage a failed EAGLE3 pipeline run. Identifies which step failed (data synthesis, hidden state dump, training, or benchmark), diagnoses root cause from logs, and suggests fixes. Use when user reports an EAGLE3 pipeline failure or asks why a specific step failed. Also helps debug new model support issues.
spark-engineer
Use when writing Spark jobs, debugging performance issues, or configuring cluster settings for Apache Spark applications, distributed data processing pipelines, or big data workloads. Invoke to write DataFrame transformations, optimize Spark SQL queries, implement RDD pipelines, tune shuffle operations, configure…