Add Uint Support
pytorch/pytorch
Add unsigned integer (uint) type support to PyTorch operators by updating ATDISPATCH macros.
Guides users through selecting, configuring, or creating a PyTorch model for a PINA problem.
$ npx skills add PINA-org/PINA --skill select-model -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install PINA-org/PINA select-model --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/PINA-org/PINA.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.opencode/skills/select-model .claude/skills/select-model && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "select-model" agent skill from https://github.com/PINA-org/PINA/tree/master/.opencode/skills/select-model into .claude/skills/select-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-model", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/PINA-org/PINA/tree/master/.opencode/skills/select-modelType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add PINA-org/PINA --skill select-model -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install PINA-org/PINA select-model --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PINA-org/PINA.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.opencode/skills/select-model .agents/skills/select-model && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "select-model" agent skill from https://github.com/PINA-org/PINA/tree/master/.opencode/skills/select-model into .agents/skills/select-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-model", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add PINA-org/PINA --skill select-model -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install PINA-org/PINA select-model --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PINA-org/PINA.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.opencode/skills/select-model .cursor/skills/select-model && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "select-model" agent skill from https://github.com/PINA-org/PINA/tree/master/.opencode/skills/select-model into .cursor/skills/select-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-model", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/PINA-org/PINA.git --path .opencode/skills/select-model--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add PINA-org/PINA --skill select-model -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install PINA-org/PINA select-model --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PINA-org/PINA.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.opencode/skills/select-model .gemini/skills/select-model && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "select-model" agent skill from https://github.com/PINA-org/PINA/tree/master/.opencode/skills/select-model into .gemini/skills/select-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-model", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install PINA-org/PINA select-modelInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add PINA-org/PINA --skill select-model -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/PINA-org/PINA.git skills-src && mkdir -p .github/skills && cp -r skills-src/.opencode/skills/select-model .github/skills/select-model && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "select-model" agent skill from https://github.com/PINA-org/PINA/tree/master/.opencode/skills/select-model into .github/skills/select-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-model", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add PINA-org/PINA --skill select-model -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install PINA-org/PINA select-model --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PINA-org/PINA.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.opencode/skills/select-model .opencode/skills/select-model && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "select-model" agent skill from https://github.com/PINA-org/PINA/tree/master/.opencode/skills/select-model into .opencode/skills/select-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-model", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
select-modelGuides users through selecting, configuring, or creating a PyTorch model for a PINA problem.
Select Model is an agent skill from PINA-org/PINA. Guides users through selecting, configuring, or creating a PyTorch model for a PINA problem. Use when the user asks about models, architecture, neural network choice, or how to build/choose a model for their PINA problem. Also triggers on phrases like "what model should I use", "choose a model", "create a model", "neural network", "architecture", "model selection", or when the user mentions specific model names (FeedForward, DeepONet, FNO, PirateNet, etc.).
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: opencode, codex, claude
It sits in AI & LLM Engineering, covering Deep learning. It works with PyTorch. The repository describes itself as: Physics-Informed Neural networks for Advanced modeling. The licence is MIT.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 0cd8afb. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are python).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
opencode, codex, claude
From compatibility in the SKILL.md frontmatter.
Select Model loads about 2.4k tokens when it runs. Until then it costs about 119 tokens; SKILL.md has 893 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from PINA-org/PINA at commit 0cd8afb, republished under its MIT licence (© PINA-org). 893 words, ~2,422 tokens.
.claude/skills/select-model/SKILL.md (or your agent's skills folder).[!IMPORTANT] Read RULES.md before using this skill — it applies to all skills.
Use this skill to choose the right neural network architecture for a PINA problem, configure its parameters, and optionally enhance it with embeddings or blocks.
Start by gathering enough context to make a reasoned recommendation. Ask the user these questions conversationally — one at a time, adapting to their answers — rather than firing them all at once.
len(problem.input_variables) / len(problem.output_variables).If the user cannot describe their problem at all, reply:
I need at least the input/output dimensions to suggest an architecture. What are the input variables and what are the outputs you want to predict?
Take the context from Step 1 and reason about which architecture family fits best. Present the reasoning to the user and invite their input rather than simply prescribing.
Models live in PINA's model (pina.model), with smaller blocks in
pina.model.block. Browsing these modules is the best way to discover what's
available — the sections below discuss how to choose.
Work through these considerations in dialogue with the user:
Operator learning? — mapping between function spaces? That points to FNO (regular grid), DeepONet/MIONet (sensor→field), or neural operators (Averaging/LowRank/Graph). Ask about the data geometry.
Message-passing / GNN? — input is a graph with explicit connectivity (mesh, point cloud, network)?
pina.model.block.message_passing.Equation discovery? — SINDy or similar. Make sure the user knows this discovers symbolic expressions, not just a black-box surrogate.
Spline fitting? — Spline for 1D, SplineSurface for 2D, or VectorizedSpline for independent per-feature splines. Typically explicit fitting, not deep learning.
Standard pointwise mapping? — This is where most PDE problems land. Within this family, consider:
Custom nn.Module — When none of the above fit, use pure PyTorch.
This is common for:
The only requirement: it must be a valid torch.nn.Module that accepts
a tensor/graph and returns a tensor/graph. With PINA solvers,
keep the constructor parameter names input_dimensions and
output_dimensions so labels are handled automatically
(or use nn.Module directly without PINA).
These are add-ons to improve convergence or enforce structure. Discuss whether the user's problem benefits from them.
Use when the PDE solution has features at multiple length scales, or when a plain MLP converges slowly (spectral bias).
from pina.model.block import FourierFeatureEmbedding
embedding = FourierFeatureEmbedding(
input_dimension=input_dim,
output_dimension=128, # must be even
sigma=2.0,
)Wrap any model manually:
class WithEmbedding(nn.Module):
def __init__(self, input_dim, output_dim, inner_size=64):
super().__init__()
self.embedding = FourierFeatureEmbedding(input_dim, 128)
self.net = nn.Sequential(
nn.Linear(128, inner_size), nn.Tanh(),
nn.Linear(inner_size, output_dim),
)
def forward(self, x):
return self.net(self.embedding(x))Hard-code periodicity so the model never needs to learn it:
from pina.model.block import PeriodicBoundaryEmbedding
embedding = PeriodicBoundaryEmbedding(
input_dimension=2,
periods={"x": 2 * 3.14159},
)ResidualBlock(input_dim, output_dim, hidden_dim, activation) — stacks
layers with a skip connection. Use inside a custom model.OrthogonalBlock(dim=-1) — orthonormalize features along a dimension.
Helps training stability.Both are in pina.model.block.
For graph-structured inputs, PINA provides blocks that follow the same
pattern: update node features by aggregating neighbor information. Available
in pina.model.block (top-level) and pina.model.block.message_passing:
| Block | Source | Description |
|---|---|---|
InteractionNetworkBlock | .message_passing | Standard encode–process–decode interaction network |
DeepTensorNetworkBlock | .message_passing | Higher-order tensor message passing |
EnEquivariantNetworkBlock | .message_passing | Energy-conserving equivariant message passing |
EquivariantGraphNeuralOperatorBlock | .message_passing | SE(3)-equivariant neural operator block |
RadialFieldNetworkBlock | .message_passing | Radial-basis field convolution on point clouds |
GNOBlock | .block (top-level) | Graph neural operator kernel integration |
Prefer the built-in GraphNeuralOperator (in pina.model) if it matches
your problem — it composes lifting, message passing, and projection into
one class. Drop down to these blocks when you need a custom arrangement.
Prefer PINA's built-in models when they match (less boilerplate). Use
pure nn.Module when they don't.
# PINA model
from pina.model import FeedForward
model = FeedForward(input_dimensions=3, output_dimensions=3, inner_size=64, n_layers=4, func=nn.Tanh)
# Pure torch custom model
class MyModel(nn.Module):
def __init__(self, input_dimensions, output_dimensions):
super().__init__()
self.net = nn.Sequential(
nn.Linear(input_dimensions, 128), nn.Tanh(),
nn.Linear(128, output_dimensions),
)
def forward(self, x):
return self.net(x)
model = MyModel(input_dimensions=3, output_dimensions=3)
# Graph model: lifting → message passing → projection
from pina.model.block import GNOBlock, FeedForward
class GraphModel(nn.Module):
def __init__(self, input_dim, hidden_dim, output_dim):
super().__init__()
self.lifting = FeedForward(input_dim, hidden_dim)
self.gno = GNOBlock(...)
self.projection = FeedForward(hidden_dim, output_dim)
def forward(self, x, edge_index, edge_attr):
x = self.lifting(x)
x = self.gno(x, edge_index, edge_attr)
return self.projection(x)model(torch.randn(batch, input_dim)) →
(batch, output_dim).model(x, edge_index, edge_attr) with dummy
tensors of the right shapes, or a torch_geometric.data.Data object if
the model expects one. The output should match the expected node-feature
shape.model.forward() with
the actual condition tensors (same dtype, device, shapes).nn.Module with PINA: keep input_dimensions and
output_dimensions as constructor kwargs for automatic label extraction.nn.Module)© PINA-org, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .opencode/skills/select-model of PINA-org/PINA.
Open the folder on GitHubat commit 0cd8afb
Select Model next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Select Model this skillPINA-org/PINA | 797 | — | ~2.4k | Automated safety check: Pass | MIT | |
| Add Uint Supportpytorch/pytorch | 104k | 2 repos | ~2.3k | Automated safety check: Pass | Custom licence | |
| CLIP Image-Text MatchingOrchestra-Research/AI-Research-SKILLs | 13k | 8 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Add Torch Shapes Examplefacebook/pyrefly | 7.1k | — | ~1.3k | Automated safety check: Pass | MIT | |
| Interview Cheatsheetwanshuiyin/ARIS-in-AI-Offer | 580 | 1 repos | ~3.4k | Automated safety check: Notes | MIT | |
| Ghstack CIpytorch/pytorch | 104k | — | ~1.4k | Automated safety check: Pass | Custom licence |
pytorch/pytorch
Add unsigned integer (uint) type support to PyTorch operators by updating ATDISPATCH macros.
Orchestra-Research/AI-Research-SKILLs
Explains OpenAI's CLIP model for zero-shot image classification, image-text similarity, semantic image search and content moderation, with install steps and code patterns.
facebook/pyrefly
A skill your agent uses when adding a new PyTorch model to Pyrefly's shape-tracking example corpus under tensor-shapes/pyrefly-torch-stubs/examples — i.e.
wanshuiyin/ARIS-in-AI-Offer
Generate a long-form Chinese interview-prep cheat sheet on a specific ML/LLM topic — formulas with derivations, from-scratch PyTorch code, comparison tables, and 25 高频面试题 (L1 必会 / L2 进阶 / L3 顶级 lab).
pytorch/pytorch
Manage CI for PyTorch ghstack stacks by running CI where its results are useful now and deferring other PRs with [no-ci].
open-infra-skills/infra-skills
Profiles, benchmarks and tunes AI training workloads on Moore Threads MUSA GPUs with a measurement-first process that keeps model behavior unchanged.
PINA-org/PINA
Create, modify, and improve PINA skills. An agent skill from PINA-org/PINA.
PINA-org/PINA
Orchestrates a complete session from problem definition through trained solver.
PINA-org/PINA
Guides users through selecting the right PINA solver for their problem, or creating a custom solver when no built-in fits.
PINA-org/PINA
Guides users through configuring the PINA Trainer for solver training, including batching strategy, data splitting, and Lightning options.
PINA-org/PINA
Audits SKILL.md files in this repo's skills directory for references to functions, classes, or modules (mentioned by name in prose, e.g.
PINA-org/PINA
Set up conditions for PINA problems. An agent skill from PINA-org/PINA.
Works with
Categories
Guides users through selecting, configuring, or creating a PyTorch model for a PINA problem. Select Model is an agent skill from PINA-org/PINA. Guides users through selecting, configuring, or creating a PyTorch model for a PINA problem.
Select Model fits situations like: the user asks about models; neural network choice; how to build/choose a model for their PINA problem; phrases like what model should I use.
Run `npx skills add PINA-org/PINA --skill select-model -a claude-code`. Or copy the skill folder (.opencode/skills/select-model in PINA-org/PINA) into .claude/skills/select-model in your project. Claude Code loads it when a task matches its description.
Run `npx skills add PINA-org/PINA --skill select-model -a codex`. Or copy the skill folder (.opencode/skills/select-model in PINA-org/PINA) into .agents/skills/select-model in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add PINA-org/PINA --skill select-model -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/select-model, .gemini/skills/select-model, .github/skills/select-model and .opencode/skills/select-model in your project.
SKILL.md names no scripts, command-line tools or credentials: Select Model is instructions for the agent only. Our summary lists: Python 3. Compatibility (from SKILL.md): opencode, codex, claude.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Select Model is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Select Model: Add Uint Support (pytorch/pytorch, 104k stars), CLIP Image-Text Matching (Orchestra-Research/AI-Research-SKILLs, 13k stars), Add Torch Shapes Example (facebook/pyrefly, 7.1k stars) and Interview Cheatsheet (wanshuiyin/ARIS-in-AI-Offer, 580 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
PINA-org (a GitHub organization) maintains it in PINA-org/PINA, which has 797 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 6, 2026.
Source: PINA-org/PINA on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.