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/mxslr/mlcraft/domain-graphnpx skills add mxslr/mlcraft --skill domain-graphgit clone --depth 1 https://github.com/mxslr/mlcraftWhat 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 | $0.00114 | $0.00545 |
| Opus 5 | $0.00057 | $0.00272 |
| Sonnet 5 | $0.00023 | $0.00109 |
| Haiku 4.5 | $0.00011 | $0.00055 |
Grade A, and why
domain-graph 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 2d 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.
What it actually says
Graph ML - Method Selection
Use PyTorch Geometric (PyG) or DGL. GNNs need node features, so add structural features (degree, node2vec) when raw features are weak.
Decision table
| Task | Recommended | Notes |
|---|---|---|
| Node classification, static graph | GCN (simple, strong baseline), then GAT | transductive; GCN is a remarkably strong baseline. |
| Large or industrial, or unseen nodes | GraphSAGE (inductive, neighbor sampling) | generalizes to nodes and graphs not seen in training. |
| Graph classification or regression | GIN (maximally expressive) with global pooling | molecules, program graphs. |
| Link prediction or graph recommendation | GraphSAGE or LightGCN with negative sampling | metrics are AUC or AP, and Hits@K or MRR. |
| Weak or missing features | add structural or node2vec features | GNNs underperform without informative features. |
Cross-cutting practice
- Leakage (critical): be explicit about transductive (mask nodes within one graph) versus inductive (held-out nodes or graphs) evaluation. For link prediction, remove the test edges from the message-passing graph during training, otherwise the model sees the answer. For graph classification, split by graph.
- Metrics: node and graph classification use accuracy or macro F1 (macro when imbalanced); link prediction uses AUC or AP, Hits@K, MRR.
- Explainability: GNNExplainer or integrated gradients (which nodes and edges mattered), and attention weights for GAT.
- Recent options (2022-2024): Graph Transformers (Graphormer, GraphGPS, Exphormer). A 2024 reassessment shows well-tuned classic GNNs (GCN, GAT, GraphSAGE) match or beat them on most benchmarks, so tune the simple baseline before reaching for a transformer.
- Improve accuracy: use
accuracy-improvement-loop; evaluate withrigorous-evaluation.
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.
- 2d ago First seen · 25 lines · 114 tokens per session scan A 1ce606329a2d
domain-graph is a skill published in the GitHub repository mxslr/mlcraft (8 stars, last pushed 1mo ago), licensed MIT. It adds 114 tokens to every session and 545 once invoked, about $0.0006 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-31.
Other skills, from other repositories
albucore-benchmarks
Running Albucore micro-benchmarks under benchmarks/, synthetic router timings, and comparing PyPI releases with uv --no-project. Use when adding benchmarks, comparing performance across versions, or documenting benchmark workflow.
albucore-conventions
Albucore image processing conventions - shapes (H,W,C), dtypes (uint8/float32), benchmark-driven backend routing (OpenCV, NumPy, Torch CPU, LUT, NumKong), tests, and lockfile discipline. Use when implementing or modifying albucore modules, writing tests, or reviewing image-processing code.
performance-optimization
Systematic performance audit for Albucore runtime code. Use whenever implementing, reviewing, profiling, or optimizing atomic image operations, backend routing, reductions, label maps, LUTs, random generation, dtype conversions, allocation-heavy paths, batch or volume kernels, or in-place behavior.
torch-performance-optimization
Optimize or review eager CPU-only Albucore PyTorch runtime paths with benchmark-backed decisions. Use when adding or changing Torch CPU kernels, Tensor/NumPy bridges, Torch backend routing, tensor layouts, allocations, threading, profiling, memory-format candidates, or Torch performance benchmarks.
albucore-public-api
Albucore star-exported API (all), routers vs albucore.functions shims, and dependents such as Albumentations. Use when changing exports, documenting API, or deciding what belongs in package all.
ml-for-aec
Computer vision for buildings, image-to-floorplan, generative ML models, performance prediction, structural analysis ML, energy prediction, natural language to design, and point cloud ML for AEC computational design.